file:///
如果要链接到本地??文件,则需要使用该协议(是,三个斜杠)。
<a href="file:///C:\Programs\sort.mw">Link 1</a>
<a href="file:///C:\Videos\lecture.mp4">Link 2</a>
出于安全原因,我将在上一节中介绍。如果打开,它将仅在浏览器中打开。如果您的浏览器可以显示文件,它将显示,否则,它可能会询问您是否要下载文件。
某些浏览器,例如现代版本的Chrome,甚至会拒绝从http协议转换为文件协议,因此,如果您想做所有这些事情,最好确保使用文件协议在本地打开它。
为什么没有卡住file:///
?
URL的第一部分是协议。协议是几个字母,然后是冒号和两个斜杠。HTTP://
并且FTP://
是有效的协议;C:/
不是,而且我很确定它甚至与其中的一个都不像。
C:/
也不是有效的网址。浏览器可能会认为它http://c/
指定了一个空白端口,但这将失败。
您的浏览器可能不会认为它引用的是本地文件。做出这一假设没有什么理由,因为公共站点通常不尝试链接到人们的本地文件。
为什么三个斜杠?
因为它是File URIscheme的一部分。您可以选择在前两个斜杠后指定主机。如果您跳过指定主机,则仅假设您正在引用自己PC上的文件。这file:///C:/etc
是的捷径file://localhost/C:/etc
。
这些文件仍将在您的浏览器中打开,这很好
您的浏览器将对这些文件的响应与对Internet上任何地方的相同文件的响应相同。这些文件 在默认文件处理程序(例如MS Word或VLCMedia Player)中打开,并且您 执行任何操作,例如要求File Explorer打开文件的位置。
浏览器中的站点无法很好地与操作系统交互。如果一个好的网站可以告诉你的机器开 lecture.mp4 在 VLC.exe ,恶意网站可以告诉它打开_virus.bat_ 中 的CMD.exe 。或者它可能只是告诉您的计算机运行一些 Uninstall.exe 文件或打开文件浏览器一百万次。
这可能对您来说并不方便,但是HTML和浏览器的安全性并不是真正针对您的工作而设计的。如果您希望能够打开 lecture.mp4 在 _VLC.exe_考虑编写一个桌面应用程序来代替。