/ htaccess文件规则和页面加载问题

时间:2011-07-13 07:33:55

标签: regex .htaccess

我有这个网址:http://mysite.com/content/14和htaccess文件中的这一行:

RewriteRule ^content\/([^-]+)$ index.php?m=apple&id=$1 [L,NC,NS]

它工作正常并显示正确的页面,但没有CSS和JS。 CSS& JS文件无法加载。这是因为src的JS文件和href的CSS文件不是以/开头的。它们太多了,我无法解决它们。

无论如何使用htaccess中的某些代码修复它而无需更改其他文件吗?

1 个答案:

答案 0 :(得分:1)

问题是客户端(您浏览器)认为资源位于http://mysite.com/content/14上,使相对网址解析为http://mysite.com/content/。但是,该文件来自http://mysite.com/

如果您无法更改引用,则可能会放入<base>标记(在HTML中 - 您可能无法执行此操作):

<base href="http://mysite.com/" />

这是<head>部分。

或者,对CSS和JS进行重写(未经测试):

RewriteRule ^content\/(js|css)\/(.+)$ $1/$2 [L]