在每个位置的虚拟主机中禁用PHP评估



我已经成功地在我的服务器中安装了suhosin,并且我正在使用此配置阻止某些虚拟主机上的魔鬼PHP eval功能:

<VirtualHost 123.123.123.123:80>
    <Directory /var/www/html/www.example.com>
         #SUHOSIN
         php_admin_value suhosin.executor.disable_eval On
    </Directory>
</VirtualHost>

但是,我需要在某些特定 URL 上启用 eval,因为平台在某些特定情况下使用它。我尝试了以下方法:

<VirtualHost 123.123.123.123:80>
    <Directory /var/www/html/www.example.com>
         # SUHOSIN
         php_admin_value suhosin.executor.disable_eval On
    </Directory>
    <Location "/some/path">
        # Reenable eval for this path
        php_admin_value suhosin.executor.disable_eval Off
    </Location>
</VirtualHost>

还有标签 LocationMatch ,没有成功(就像它不存在一样:根本没有效果)。

任何想法如何让此指令仅适用于特定路径?

谢谢

我没有使用SUHOSIN,我为每个网站使用不同的php.ini文件解决了这个问题。像这样:

<VirtualHost 123.123.123.123:80>
[...]
PHPINIDir /path/to/specificinifile
[...]
</VirtualHost>

希望这有帮助。

最新更新