2011-05-08 39 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="/"> 

這將迫使瀏覽器預先設置/(在這個例子中)到所有相關資源鏈接。