我只是想知道定义链接到域名中的网址的网址的最佳方法是什么。例如,对于域名www.example.com ..我可以有像
这样的链接 <a href="http://www.domain.com/test.html">test</a>
或
<a href="test.html">test</a>
我遇到的一个问题是,在使用模板的时候..如果我使用带有相对链接的html模板,那么我就不能使用相同的模板来访问www.example.com/directory2目录了不适用于那个页面..既不是css也不是javascripts文件。
我要么必须复制模板,要么绝对设置路径。我选择了绝对路径。所以模板路径以http://www.mydomain.com/开头..这是否会导致任何性能问题,例如多个http请求,域解析或其他任何问题?你对此有何建议/评论?
感谢。
答案 0 :(得分:3)
你可以根除所有路径
eg <a href="/test.html">test</a>
这与放置域名相同。
[编辑]您可以使用mod重写,然后根据需要将网站移动到不同的文件夹 - 请参阅 http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritebase
约什
答案 1 :(得分:3)
绝对使用相对路径。
这将为您提供同样的功能,如果您的域名发生变化,将阻止您遇到问题,并允许您在其他服务器上测试,而不是在实时.... < / p>
答案 2 :(得分:1)
我猜你应该使用相对路径。因为如果您的域名已经消失/更改,该网站仍然可以正常工作,而且不止于此,html中的路径会更短。
如果您想要适应更改文件结构的情况。 假设您使用html开发网站。 我猜你可以利用shtml / server side include来分隔常见项目,例如: 菜单
这样当结构发生变化时,您只需修改menu.shtml
即可希望这有帮助
答案 3 :(得分:1)
虽然使用绝对路径不会增加任何额外开销,但本地链接的可接受做法是使用相对链接。通过wget或Down-Them-All(网站下载工具)等工具,可以区别对待绝对链接的相对链接。
但是,如果您的模板解决方案最适合绝对链接,那么坚持使用它们并不是闻所未闻。暂时,如果通过链接回原始页面来删除网站的内容,绝对链接可能对您有利(来源:http://www.navegabem.com/linking-strategy.html)。
答案 4 :(得分:0)
Josh建议什么是好的,但如果你的网站被置于虚拟目录下,它将会失败。我建议始终使用相对路径。
答案 5 :(得分:0)
始终是您引用站点中资源(页面,css文件,js文件)的相对路径。
原因:
但是,如果您的网站真的那么大,您将需要一个链接和链接数据库,以免在移动资源时错放链接。这就是微软在microsoft.com上所做的事情。
JRH
答案 6 :(得分:0)
我和Josh一起....指定相对于应用程序根目录的路径:/myfolder/myfile.html
在我的情况下,这具有在我的开发机器上工作的额外优势,其中每个站点都是我的默认站点之外的应用程序(IIS),以及在现场站点上工作。