I believe this is a known issue, but I have never seen a solution for it? Please correct me if I'm wrong!

The problem: taxonomy pages allow anything to be put in the depth argument position. This results in duplicate content, and search engines don't like that. 

Let's say this is a taxonomy page:
..taxonomy/term/45

Then these URLs all show the content from that original page:

..taxonomy/term/45/all
..taxonomy/term/45/test
..taxonomy/term/45/tree
..taxonomy/term/45/whatever

Note that any query after the last trailing slash is possible and returns the same page/content (HTTP Response Code 200).

I believe the solution would be to have an option in the Global Redirect module which 301 redirects every non-original taxonomy URL (eg ..taxonomy/term/45/whatevertext) to the original taxonomy URL (eg ..taxonomy/term/45). 

(I'm not a webdeveloper so unfortunatly I can't come up with a real technical solution...)

Does this make sense and would this be possible? I believe this is valuable for everyone who takes SEO seriously (everyone?). Thanks in advance. 

Comments

alexmoreno’s picture

even the node/x pages accept arguments without redirecting to the correct url, like node/1/blabla...

Any solution for that?

mylocaltrades’s picture

Subscribing

kscheirer’s picture

I don't think a fix is possible in the short-term. Many Drupal modules rely on the extra url elements, those get passed as arguments to the callback function. There's no way to tell when it's ok, and when it's just spurious. Any fix would have to go into Drupal 8 first anyway.

ZambalaRed’s picture

Issue summary: View changes

Still no solution?

b777’s picture

I would love any help on this as well.
On my site, any node can be accessed by simple doing /node/[node-id]/any-random-string/any-random-string

So if anyone incorrect links to my site with that mistake, Google finds that page as duplicate content..

IckZ’s picture

Did anyone of you get a solution for this problem?

I understand @kscheirer's notice or the problem how to handle valid or invalid arguments (for example facets, which should work) but maybe there is a condition to check if an argument changes the content or if an argument generate duplicated content?

This is btw also an issue on drupal.org. If an external link is wrong, it genereates duplicated content, and the site owner does not recognize this because no error is shown..

https://www.drupal.org/start
https://www.drupal.org/start/duplicated/content
https://www.drupal.org/start/drupal/cms