我有以下.htaccess强制所有文件都通过index.php文件,我只是注意到我对css,javascript,images的所有引用都停止了工作。我认为导致这种情况的是htaccess,如果是这样,我该如何解决?
这是我的.htaccess文件:
<IfModule mod_rewrite.c>
# redirect all calls to index.php
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1 [PT,L]
</IfModule>
答案 0 :(得分:2)
典型的原因是您的HTML模板包含指向您资源的相关链接。
<link rel="stylesheet" type="text/css" href="main.css">
一旦您的网页不再位于/index.html
但位于/app/index
下,您就会失败。您现在在URL中有一个新的虚拟目录,因此如果您没有在任何地方指定绝对路径名/app/
,那么假设CSS和图像也位于/img/logo.png
下。
一个经典的解决方法是在模板<head>
中添加它:
<base href="/">
这将强制浏览器将/
(在此示例中)添加到所有相关资源链接。