BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / www-technology / #5477同步于 2008/12/21
该镜像源已超过 30 天没有更新,可能在源站已被删除。
WWWTechnology机器人发帖

[合集] 关于网站hyperlink使用绝对路径

tntzwz
2008/12/21镜像同步0 回复
☆─────────────────────────────────────☆ wks (cloverprince) 于 (Sun Jul 20 15:37:00 2008) 提到: 有时候,我的网站内部有很多页面,放在不同子目录里面。比如 http://www.example.com/index.html http://www.example.com/about/about.html http://www.example.com/download/beta/download.html 然后,就引出了很多问题。比如about.html和download.html都有指向index.html的链接,如果使用相对路径,就是 <!-- in about.html --> <a href='../index.html'>foo foo foo</a> <!-- in download.html --> <a href='../../index.html'>bar bar bar</a> 他们的路径是不同的。很不方便,对于静态页面也很难维护。 当然,为了方便,我可以干脆直接写<a href='/index.html'>baz baz baz</a>,这个放在任何路径的页面里面都是可以的。 但是,不方便之处来了:在不同的地方,网站的根目录是不同的。 如果我自己搭一个服务器,可以用根目录。 有时候放在我的个人目录里: http://www.example.com/~wks/index.html http://www.example.com/~wks/about/about.html 这时候用绝对路径href='/index.html'就会出问题。 记得ASP.NET的WEB CONTROL会自动转换地址。只要在服务器里面配置好site的根目录,页面里面连接指定一下hyperlink='~/index.aspx',发送到客户端的时候就会自动转换成相应的路径(about.aspx发到客户端就是'../index.aspx',download.aspx发到客户端就是'../../index.aspx') 不知道其他技术会(比如静态、xml+xslt、php、jsp、django)可以如何较好地解决这个问题呢? ☆─────────────────────────────────────☆ ericyosho (ericyosho) 于 (Sun Jul 20 15:45:26 2008) 提到: 我依稀记得HTML的规范里面就有base这个标签的呢? 类似……,用来指明当前文件中的/ 代表的是哪个路径。 =。= ☆─────────────────────────────────────☆ wks (cloverprince) 于 (Sun Jul 20 16:12:14 2008) 提到: 嗯,找到了,就是用<base>标签来控制。 不过,base控制的是相对路径。 像这样: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <HTML> <HEAD> <TITLE>Our Products</TITLE> <BASE href="http://www.aviary.com/products/intro.html"> </HEAD> <BODY> <P>Have you seen our <A href="../cages/birds.gif">Bird Cages</A>? </BODY> </HTML> 这个连接会指向: http://www.aviary.com/cages/birds.gif
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。