2015-02-05 50 views
-1

我.htacces被設置好的處理所有的請求到index.php的.htaccess重寫一切的index.php或靜態文件

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 

RewriteRule^index.php [QSA,L] 

是工作的權利,但現在我發現自己,我需要做的情況從從的img URL訪問文件夾中的文件,請按照我的文件夾結構和.htaccess中的新行:

文件夾結構

.htaccess // File 
index.php // Folder 
webroot // Folder 
    img // Folder inside webroot 

.htacess

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 

RewriteRule ^webroot/.+\.(jpg|gif|png|ico)$ - [L] // New line 

RewriteRule^index.php [QSA,L] 

htaccess說如果我得到http://example.com/webroot/img/something.jpg去,如果不處理任何其他的index.php。

如何在不調用webroot的url的情況下訪問我的靜態文件? 像這樣http://example.com/img/something.jpg與我目前的文件夾結構?

+0

您的新行不會重寫任何內容。但是不要映射/重定向錯誤的img /路徑,只需像其他人一樣使用''。 – mario 2015-02-05 20:16:41

+0

如果你不想在URL中使用webroot,爲什麼不把你的文件移動到'/ img'而不是從'webroot/img'重寫呢? – 2015-02-05 20:17:10

+0

圖案的含義 – 2015-02-05 20:19:11

回答

0

如果你想從url中刪除webroot,你可以試試這個。

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^img/(.*)$ /webroot/img/$1 [L]