我有这个网址: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中的某些代码修复它而无需更改其他文件吗?
答案 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]