2014-01-27 53 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'行 –