我曾经在我的网站替代基础标签
模式改写我使用的基本标签来解决我的相对链接问题
<base href="/" />
但问题是绝对链接如。 http://www.absolutelinks.com
它它改变www.mysite.com/http://www.absolutelinks.com
我怎样才能解决这个
我曾经在我的网站替代基础标签
模式改写我使用的基本标签来解决我的相对链接问题
<base href="/" />
但问题是绝对链接如。 http://www.absolutelinks.com
它它改变www.mysite.com/http://www.absolutelinks.com
我怎样才能解决这个
基本href只适用于相对URL,所以如果你有:<a href="http://google.com/">Google</a>
你会被重定向到谷歌,而不是http://mydomain/http://google.com/
。请发布您的HTML文档的代码。
但是使用base
并不是最佳实践。更好的方法是使用绝对URL,例如:src="/styles/main.css"
其中总是指向mydomain/styles/main.css
。
不要使用<base>
可言,反而有一些服务器 - 并且在那里保留一个$ base变量 - 然后,在HTML生成过程中输出任何URL时使用{$ base} {$ restofurl}。
当您在开发/测试/实时环境中运行相同的代码时,这很有效 - 您只需更改服务器端$ base配置。
使用上面的PHP/Smarty语法,但我相信你明白了。
但请注意,如果您的网站位于“/style/main.css”文件夹中,则不会执行此操作。 http://www.mydomain.com/newtest/index.html,src =“/ styles.main.css”将查找根文件夹中的css文件。我认为最好的做法是使用配置文件来设置您的域+路径的完整路径 – 2010-10-05 11:06:09