2012-01-17 129 views
1

我試圖轉發請求/bar/baz/web/index.php/bar/baz,以便您不必在URL中使用該「網絡」文件夾。到目前爲止,我有/.htaccesshtaccess重寫URL刪除

RewriteEngine On 
RewriteRule ^(.*)$ web/index.php [QSA,L] 

它是,現在要求/controller/action/導致錯誤的問題:

No route found for "GET /web/controller/action"

這背後的框架並不重要,關鍵是,它應該是controller/action沒有額外的「網絡」的網址。

+1

是的,哦**是**框架很重要,因爲它可以做一個重定向(Wordpress在一些配置上,Drupal和Joomla也是如此)。所以你必須確定哪個框架,用戶輸入哪些URL以及如何在服務器端進行內部修改。 – 2012-01-17 16:39:17

+0

@OlivierPons Symfony 2. – Tower 2012-01-17 18:44:53

+0

對不起,我*很直截了當,但在沒有提供足夠的信息的情況下尋求幫助有時會令人沮喪。 – 2012-01-17 20:52:14

回答

1

與此一改變你的.htaccess代碼:

Options +FollowSymLinks -MultiViews 
RewriteEngine on 

RewriteRule ^(?!web/index\.php|controller/)(.*)$ web/index.php/$1 [QSA,L,NC] 

什麼這個規則將做內部重定向,除了開頭/controller/web/index.php/web/index.php所有請求。