2011-05-08 54 views
1

我有以下.htaccess强制所有文件通过index.php文件,我只注意到,所有我对CSS,JavaScript,图像的引用停止工作。我认为是造成这种情况的htaccess,如果是这样,我该如何解决这个问题?.htaccess重定向导致css或图像加载

这里是我的.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> 

回答

2

典型的原因是你的HTML模板包含您的资源相对链接。

<link rel="stylesheet" type="text/css" href="main.css"> 

会尽快页面不再驻留在/index.html/app/index失败。你现在在你的URL中有一个新的虚拟目录,因此,如果你没有在任何地方指定绝对路径名称/img/logo.png,那么为什么假设CSS和图像也位于/app/之下。

一个经典的解决方法是在你的模板<head>补充一点:

<base href="/"> 

这将迫使浏览器预先设置/(在这个例子中)到所有相关资源链接。