我遇到一个简单但令人沮丧的问题。我的网站上有一个徽标,我想链接回该网站的主页。如果我确实执行href =“ index.html”,但我尝试执行href =“ /”时(我认为也应该如此),它将带我进入计算机的文字根目录。
例如,如果我有href =“ /”,然后单击徽标,它会将我定向到此处:
将其托管在服务器上后,这种情况是否会缓解?任何对此行为的见识将不胜感激。
答案 0 :(得分:1)
是的,仅当您正在查看文件系统之外的站点而不是本地或远程服务器时,才会出现此问题。
如果您还是想防止这种情况,可以使用相对路径而不是绝对路径。例如:
如果您位于/photos/index.html
上,并且希望标题徽标转到/
,则您的链接可能是:../
可以进入一个目录。
如果您位于/index.html
上,并且希望标题徽标指向当前目录,则链接可能为:./
停留在当前文件夹级别。
答案 1 :(得分:1)
您还可以添加此选项以禁用目录列表并显示index.html的内容
使用以下内容创建一个.htaccess
文件:
Options -Indexes
或者您可以在<VirtualHost>
指令中使用此选项。
答案 2 :(得分:1)
您是正确的,href为“ /”是从中提供文件的根目录,在本例中为本地文件系统。
但是,我确实相信将href设置为“ index.html”或“ /index.html”会稍微优化性能,因为“ /”始终会解析为“ index.html”。
我还建议您将本地环境设置为具有本地服务器,该服务器不仅仅通过浏览器读取文件。 MAMP是执行此操作的简单方法。
答案 3 :(得分:1)
您想做的事情可以通过:
<a href = "./"></a>
更多参考
https://www.w3schools.com/tags/att_a_href.asp
https://html.com/attributes/a-href/#Different_URL_Forms
这个问题已经回答