No momento, os URLs do meu site não diferenciam maiúsculas de minúsculas. Por exemplo, os dois links a seguir mostram exatamente a mesma página:
http://example.com/about
http://example.com/About
No entanto, dando uma olhada no site wordpress.org, notei que os URLs diferenciam maiúsculas de minúsculas. Por exemplo, o segundo link abaixo é uma página de erro 404:
http://wordpress.org/about
http://wordpress.org/About
Minha intenção é tornar os URLs do meu site sensíveis a maiúsculas e minúsculas. Além da questão óbvia de evitar conteúdo duplicado, quais são os prós e os contras de ter URLs que diferenciam maiúsculas de minúsculas?
Atualizar
O Google parece operar uma política de URL que diferencia maiúsculas de minúsculas em seus próprios URLs. Por exemplo, o segundo link abaixo é um 404:
http://google.com/doodles
http://google.com/Doodles
Atualização 2
Obrigado por suas respostas. Decidi seguir os conselhos mencionados na resposta aceita e implementar os redirecionamentos 301, quando necessário. Como estou trabalhando com o WordPress, minha solução de código é a seguinte (caso alguém esteja interessado):
function force_lowercase_urls() {
if ( is_admin() )
return;
if ( preg_match( '/[A-Z]/', $_SERVER['REQUEST_URI'] ) ) {
wp_redirect( strtolower( $_SERVER['REQUEST_URI'] ), 301 );
exit();
}
}
add_action( 'init', 'force_lowercase_urls' );
fonte
But wouldn't that result in duplicate content? – henrywright
Você nunca precisará se preocupar com links duplicados se o site usar links canônicos corretamente e você puder acessar 1 página de um milhão de maneiras e nunca ser afetado por conteúdo duplicado.Respostas:
Dois dos sistemas de arquivos do sistema operacional mais amplamente utilizados para veicular conteúdo da Web têm configurações muito diferentes para diferenciar maiúsculas de minúsculas de URLs por padrão. Se seus URLs diferenciam maiúsculas de minúsculas é provavelmente uma função da qual você está usando:
Na minha opinião, nenhum dos padrões é ideal:
A solução ideal seria mostrar a página apenas quando o URL estiver em maiúsculas corretamente. Para capitalização incorreta, o usuário deve ser redirecionado 301 para a capitalização preferida. Existem algumas maneiras de fazer isso:
fonte
/iNdEx.HtMl
ou/InDeX.hTml
ambos retornarão/index.html
(desde que/index.html
seja um arquivo físico no sistema de arquivos).Aqui está a posição do Google em uma sessão de bate-papo ao vivo arquivada (o link agora está desativado):
A equipe do IE recomenda escolher uma convenção de inclusão de arquivo e segui-la estritamente , pois pode melhorar o desempenho.
fonte
O RFC 3986 6.2.2.1 define URIs como não diferencia maiúsculas de minúsculas, portanto, não é uma boa ideia torná-las com distinção entre maiúsculas e minúsculas, como o wordpress.org.
fonte
http://
) - não diferencia maiúsculas de minúsculas, normaliza para minúsculas. 2 - O nome do host (example.com
) - não diferencia maiúsculas de minúsculas, normaliza para minúsculas. 3. Caracteres codificados em porcentagem (%3F
) - não diferenciam maiúsculas de minúsculas, normalizam para maiúsculas. O restante da URL geralmente faz