O HTTP começa com duas barras. Por exemplo http://example.com
.
O mesmo vale para o FTP. Por exemplo ftp://example.com
.
No entanto, os "URLs" do arquivo começam com três barras. Por exemplo, lendo um arquivo pdf usando o chrome, o URL seria file:///D:/Desktop/Book.pdf
.
Por que os URLs de arquivo usam três barras?
browser
filesystems
url
Pacerier
fonte
fonte
file://localhost/D:/Desktop/
automaticamente.Respostas:
Como outros já mencionaram, o esquema do arquivo está no formato "file: // <host> / <caminho>". Embora a maioria dos navegadores não tenha problemas com apenas duas barras, e com razão.
Se tudo for igual, a barra tripla e a palavra-chave "localhost" existem apenas para garantir a conformidade com a sintaxe URI / URL válida. No contexto do esquema do arquivo, o host não tem sentido, pois é carregado diretamente de um sistema de arquivos sem nenhum protocolo explícito de transferência ou caminho do documento do servidor. Por não ser HTTP, ele não pode ser carregado a partir de um servidor Web padrão, onde, em teoria, você pode ter vários hosts virtuais locais configurados. E ele não pode carregar de um volume de rede padrão que é tecnicamente outro "host", já que o navegador usa apenas o nome do volume como "arquivo: /// volumes / foo". Por fim, tentar coisas como "file: //example.com/some/file" não funciona. Provavelmente há algum motivo para oferecer suporte a um host externo, mas não consigo pensar em nenhum.
Atualmente, a IETF está redigindo alterações para remover o requisito de barra tripla, embora o rascunho também adicione algumas possibilidades ímpares como
file:c|/path
e parfile://///host.example.com/path
.fonte
A sintaxe completa é
file://host/path
.Se o host for
localhost
, ele poderá ser omitido, resultando emfile:///path
.Consulte RFC 1738 - Localizadores uniformes de recursos (URL) :
fonte
localhost
de outros protocolos ou funciona apenas parafile://
?Dennis explicou a terceira barra, necessária para separar a
host
dapath
, mas as outras duas são muito mais interessantes ...Acontece que eles eram uma adição inútil e um tanto arbitrária à sintaxe da URL. Tim Berners-Lee, inventor da World Wide Web e autor de muitos de seus padrões (incluindo o RFC ao qual Dennis se vinculou), lamentou seu uso da 'barra dupla' em uma entrevista em 2009.
http://bits.blogs.nytimes.com/2009/10/12/the-webs-inventor-regrets-one-small-thing/
Portanto, exceto por um lapso menor (e pouco característico) da previsão, há cerca de 18 anos, o URL do arquivo poderia ter sido facilmente
file:/D:/Desktop/Book.pdf
, e nãofile:///D:/Desktop/Book.pdf
.Para responder à sua pergunta, não existe uma boa razão para os URLs terem três barras.
Atualização: como o @ComFreek aponta nos comentários, a partir de 2017, o
file:/D:/...
exemplo acima agora é válido! Isso se deve ao RFC 8089 , que especifica especificamente essa correção do padrão anterior ...Que hora de estar vivo.
fonte
http:example.com
vez dehttp://example.com
Pode não parecer muito, mas eles se somam. O Google recebe milhões de pesquisas por dia. Quantos links existem em uma página? Pelo menos 20. Isso significa que, para um milhão de pesquisas, se as barras não fossem necessárias, 20 MB de largura de banda poderiam ter sido salvos.http://example.com
pode ser vinculado a//example.com
um documento transmitido por http. É chamado de URL relativo do protocolo , todos os navegadores os suportam.file:/D:/Desktop/Book.pdf
existe um URI de arquivo válido conforme a RFC 8089 (a partir de 2017), que substituiu a RFC 1738 (1994) nos aspectos da URI do arquivo.