- Jun. 10th, 2006
- 2 comments
This is a question I'm currently researching. I have never looked into it before, because I haven't really used dynamic URLs for anything visible to a search engine recently; I always use mod_rewrite these days.
The question goes as follows:
When designing a dynamic URL and constructing it by hand (something I never do, but many do; using a function to make URLs will achieve a better level of consistency), and number_of_parameters >= 2, you have n! choices for order. Granted, for 2-3 parameters, that's only 2 or 6 permutations respectively, but are these the same?
It's actually an interesting question. The RFC does not say anything about this, and for most intents and purposes I'd say they're the same (for most applications), but the application has access to the query string as is, and can act differently and accordingly.
More interestingly, in PHP, you can use  (encoded, of course) in a URL to successively add values to an array. In that case, for sure the answer is that we cannot assume parameter order doesn't count. For example (unencoded for clarity) ?a=1&a=2 is definately meaningfully different than ?a=2&a=1.
So if we're not consistent, can it yield duplicate content? I'm not sure, but leaning toward yes. Anyone care to comment? I would hope that search engines would try to fix it, but I've never heard anyone speak about it.
The same concern would apply to capitalization, though I'm a bit more optimistic about search engines being able to figure that out, because it's algorithmically simpler to do so, and a more prevalent problem (thank you Microsoft!).
These questions are important, as I need to verify the answer for something I'm writing. If anyone knows, please comment :) Obviously, the answer may vary by search engine. I may actually design a testcase and post it online to see how it gets spidered, or mine existing sites for data by looking for one with this "design problem" and seeing what the big three search engines do.
"2 Wise Comments Banged Out Somewhere On The Internet ..."