2014-01-27 55 views
1

我有一個PHP應用程序,它需要在其與此重寫規則.htaccess文件:定製php.ini並重寫規則在.htaccess

RewriteRule .* blog_manager/controller/frontController.php 

我已經打開了新的託管帳戶和我他們想禁用擴展: suhosin.mt_srand.ignore

爲他們加入以下行.htaccess文件,這是爲了加載禁用擴展的自定義.ini文件:

AddHandler phpini-cgi .php 
Action phpini-cgi /cgi-bin/php5-custom-ini.cgi 

但隨後,我開始得到500內部服務器錯誤... 顯然,重新編寫的代碼和它們添加的行不能一起工作。

我試圖禁用該擴展與代碼中的ini_set()和php_flag/php_value在htaccess文件中,但都失敗。

有人知道這是爲什麼嗎?有什麼可以做的,以允許rewriterule,仍然禁用該擴展?

+0

檢查你的Apache是​​error.log – anubhava

+0

這是日誌中的錯誤:請求超過了20個內部重定向的上限,由於可能的配置錯誤。如果需要,使用'LimitInternalRecursion'來增加限制。 –

回答

1

您的規則改成這樣:

RewriteCond %{REQUEST_URI} !/blog_manager/controller/frontController.php [NC] 
RewriteRule^blog_manager/controller/frontController.php [L] 
+0

它的工作,即使只與: 'RewriteCond%{REQUEST_FILENAME}!-f' 但這樣,我暴露我的文件,以供任何人查看...是唯一的方法嗎? –

+0

ok看到更新後的代碼,它會將所有內容轉發給controller.php。 – anubhava

+0

是的,但現在我再次得到重定向,因爲'AddHandler'行 –