是否有任何簡單的方法來檢測是否安裝mod_security &只使用PHP?理想情況下,不需要執行任何exec()終端類型的命令。檢測Mod_Security是否安裝了PHP?
有些人推薦使用apache_get_modules(),但這個特定的web主機不允許顯示。這也是其他用戶在這裏提到的:http://www.devcomments.com/apache_get_modules-solution-to130703.htm
是否有任何簡單的方法來檢測是否安裝mod_security &只使用PHP?理想情況下,不需要執行任何exec()終端類型的命令。檢測Mod_Security是否安裝了PHP?
有些人推薦使用apache_get_modules(),但這個特定的web主機不允許顯示。這也是其他用戶在這裏提到的:http://www.devcomments.com/apache_get_modules-solution-to130703.htm
嘗試使用apache_get_modules
function來獲取已加載模塊的數組。如果該模塊被加載,但沒有列在那裏,你可能想嘗試phpinfo
與phpinfo(INFO_MODULES)
代替:
ob_start();
phpinfo(INFO_MODULES);
$contents = ob_get_clean();
$moduleAvailable = strpos($contents, 'mod_security') !== false;
救命稻草這裏抓。
嘗試讓腳本向自己發出一個請求(通過file_get_contents
或者cURL擴展名),以便訪問mod_security。如果它返回一個403(或任何的mod_security的默認響應),這應該是足夠的信息讓你去...
你可以做只需要創建一個test.php的文件,並使用..
<?php phpinfo(); ?>
,並期待在apache2handler,並期待在:加載的模塊..這樣的事情...
http://gyazo.com/bcba303469f23671f7213e1478788cbd.png
-Mike
這似乎不適用於PHP-FPM,在這種情況下,沒有Apache2handler塊 – vrijdenker 2016-07-08 08:54:35
應注意這是可以做到只有在PHP被安裝爲Apache模塊時。 – Artefacto 2010-07-05 22:58:08
此功能對所有主機都無法正常工作。某些主機出於某種原因似乎不會使用此功能返回所有的Apache mods。另一篇文章:http://www.devcomments.com/apache_get_modules-solution-to130703.htm 任何其他想法? – user384030 2010-07-06 00:25:29