2013-01-17 153 views
2

到目前爲止我對.htaccess文件的理解很少。我想將所有請求重定向到我的根文件夾中的一個index.php文件,除非URL鏈接到存在並位於文件夾中的文件。 (例如example.com/files/picture.png)我只想在根目錄下使用htaccess文件來實現這一點,如果需要,還可以在文件目錄中使用htaccess文件。此外,我不想顯示權限被拒絕的消息。將所有請求重定向到index.php,除了/ files子目錄

現在,我有這樣的:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule . index.php [L] 

但是,如果該文件的URL指的存在,它不重定向到一個index.php文件。任何幫助?我在網上尋找,但找不到任何東西。

回答

5

事情是這樣的:

RewriteEngine on 

RewriteCond %{REQUEST_URI} /img/.+(gif|png|jpg)$ 
RewriteRule .* - [L] 

RewriteCond %{REQUEST_URI} /css/.+(css|png)$ 
RewriteRule .* - [L] 

RewriteCond %{REQUEST_URI} /js/.+css$ 
RewriteRule .* - [L] 

RewriteCond %{REQUEST_URI} /js/.+(js|htm)$ 
RewriteRule .* - [L] 

RewriteCond $1 !^(index\.php|robots\.txt) 
RewriteRule ^(.*)$ /index.php/$1 [L] 

所有請求都將通過index.php文件除了CSS JavaScript的和圖像文件。這個用於codeigniter框架的.htaccess文件,所以它對於你的情況可能有點不同。

相關問題