我应该使用网站内页面的相对路径吗?或者没关系?

时间:2009-06-19 08:32:57

标签: html url path relative-path absolute-path

我只是想知道定义链接到域名中的网址的网址的最佳方法是什么。例如,对于域名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请求,域解析或其他任何问题?你对此有何建议/评论?

感谢。

7 个答案:

答案 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文件)的相对路径。

原因:

  1. 这使您可以随时更改您的域名,而不会引起大量的头痛
  2. 让您轻松重构网页。
  3. 但是,如果您的网站真的那么大,您将需要一个链接和链接数据库,以免在移动资源时错放链接。这就是微软在microsoft.com上所做的事情。

    JRH

答案 6 :(得分:0)

我和Josh一起....指定相对于应用程序根目录的路径:/myfolder/myfile.html

在我的情况下,这具有在我的开发机器上工作的额外优势,其中每个站点都是我的默认站点之外的应用程序(IIS),以及在现场站点上工作。