2010-07-05 17 views

risposta

4

Provare il apache_get_modulesfunction per ottenere un array dei moduli caricati. Se questo modulo viene caricato, ma non elencato lì, si potrebbe desiderare di provare phpinfo con phpinfo(INFO_MODULES) invece:

ob_start(); 
phpinfo(INFO_MODULES); 
$contents = ob_get_clean(); 
$moduleAvailable = strpos($contents, 'mod_security') !== false; 
+1

Va notato questo può essere fatto solo se PHP è installato come modulo Apache. – Artefacto

+0

Questa funzione non sembra funzionare correttamente per tutti gli host. Alcuni host sembrano non restituire tutte le mod di apache utilizzando questa funzione per qualche motivo. Un altro post su di esso: http://www.devcomments.com/apache_get_modules-solution-to130703.htm Eventuali altre idee? – user384030

2

Cogliere a cannucce qui.

Provare a fare in modo che lo script faccia una richiesta a se stesso (tramite file_get_contents o forse l'estensione cURL) che farebbe scattare mod_security. Se si restituisce un 403 (o qualunque sia la risposta di default di mod_security è), che dovrebbe essere abbastanza informazioni per voi di andare via ...

3

si può fare solo creare un file test.php e l'uso ..

<?php phpinfo(); ?> 

e guardare l'apache2handler, e guardare: i moduli caricati .. qualcosa di simile ...

http://gyazo.com/bcba303469f23671f7213e1478788cbd.png

-Mike

+2

Questo non sembra funzionare per PHP-FPM, nel qual caso non esiste un blocco Apache2handler – vrijdenker

Problemi correlati