Sim, todos os navegadores convencionais "acrescentam uma barra" à solicitação HTTP ao solicitar uma URL de domínio simples (por exemplo, a página inicial). Isso é realmente necessário para validar a solicitação HTTP, que http://example.com/
é:
GET / HTTP/1.1
Host: example.com
Observe a /
(barra) na primeira linha - este é o URL que está sendo solicitado. Não é válido não ter nada aqui. De RFC 2616 :
Observe que o caminho absoluto não pode estar vazio; se nenhum estiver presente no URI original, DEVE ser fornecido como "/" (a raiz do servidor).
Você precisa examinar a solicitação HTTP que o navegador faz para o servidor. O URL exibido na "barra de status do navegador" ou mesmo o URL na barra de endereço pode ser diferente - mais fácil de usar. O Google Chrome não anexa a barra à direita na barra de status, embora a barra esteja presente na solicitação.
Nenhum redirecionamento 301 ocorre se você especificar http://example.com
(sem barra) porque o navegador corrige a solicitação HTTP antes de ser feita.
Observe que isso é diferente das barras adicionadas ao final dos URLs quando existe um caminho / diretório. por exemplo. http://example.com/directory/
. O artigo ao qual você vincula parece tratar da mesma forma e não parece ser IMO totalmente correto. Se você solicitou http://example.com/directory
(sem barra), o navegador não anexa uma barra e sim, a maioria dos servidores 301 será redirecionada para http://example.com/directory/
(barra) - mas isso depende do servidor; poderia simplesmente quebrar! No Apache, por exemplo, isso depende da DirectorySlash
diretiva que está sendo definida on
.