我已经成功地在我的服务器中安装了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>
希望这有帮助。