I agree with Zistoloen’s answer in that you should use rel
-canonical
or 301-redirects. However, I don’t agree that rel
-canonical
is the best practice.
If possible, you should use 301-redirects.
rel
-canonical
only works for search engines that support this link type keyword (which are not all search engines).
301-redirects work for everything and everyone. All search engines, all users, all tools.
Think, for example, of bookmarking services: if you’d use rel
-canonical
, some users might bookmark the uppercase variant, some the lowercase variant. If you 301-redirect, everyone would bookmark the same URL. Think of caches. Think of archives. Think of the "visited link" decoration. There are countless examples why it’s better to have a "forced" canonical URL (= 301 redirect) for a resource than just a recommendation (= rel
-canonical
).
Search engines need to differentiate upper and lower case in URLs, as there can be different pages whose URLs only differ in case. Now, if you have several URLs for the same page, search engines won’t "penalize" you. Assuming that they recognize that it’s duplicate content, they‘ll simply choose one of these URLs. But better be explicit here. Use 301-redirects, if possible; if not, use rel
-canonical
.