web-dev-qa-db-fra.com

Vérifiez si PHP est installé sur Apache ou IIS Server?

Existe-t-il un moyen de vérifier si PHP est installé sur un serveur Apache ou IIS dans l’environnement PHP lui-même)?

Si c'est le cas, comment?

16
Oliver Spryn

créez un fichier (disons info.php) avec le contenu suivant sur un chemin accessible et essayez de le parcourir:

<?php
phpinfo();
?>

@Alfabravo est correct: n'oubliez pas de supprimer le fichier du serveur après l'avoir utilisé!

22
alfasin

Créez un script PHP appelé php.php avec le contenu:

<?php
phpinfo();
?>

et exécutez-le à partir de votre navigateur. Ou à partir de la ligne de commande, exécutez:

php -v
9
j08691

Je ne sais pas avec quelle version PHP version elle est devenue disponible, mais essayez ceci:

if( strpos( $_SERVER['SERVER_SOFTWARE'], 'Apache') !== false) 
  echo 'Have Apache';
else
  echo 'Have some other server';
7
untill

La réponse pratiquement la plus définitive possible (il existe d'autres possibilités similaires) est:

function on_iis() {
    $sSoftware = strtolower( $_SERVER["SERVER_SOFTWARE"] );
    if ( strpos($sSoftware, "Microsoft-iis") !== false )
        return true;
    else
        return false;
}

Maintenant, utilisez simplement on_iis() quand vous voulez savoir.

Vous pouvez également le découvrir via $ _SERVER ['DOCUMENT_ROOT'], en quelque sorte:

Lire http://www.helicron.net/php/

(Fondamentalement, selon l'article, Apache définit la racine du document avec une variable valide, et IIS ne le fait pas).

0
jbnunn