PHP

Modification de quelques variables serveur

En septembre 2012, la nouvelle architecture des serveurs [1] de Cassiopea chez Gandi a modifié quelques valeurs des variables serveur. Voici ces modifications :

Variable serveur Valeur actuelle (Gandi) Valeur ancienne (Openminds)
$_SERVER[’SERVER_ADDR’] IP du serveur applicatif courant, il y en a maintenant trois IP de l’unique serveur applicatif
gethostbyaddr($_SERVER[’SERVER_ADDR’]) Server name du serveur applicatif courant Server name du serveur applicatif unique
$_SERVER[’SERVER_NAME’] virtual host server name du serveur applicatif
$_SERVER[’REMOTE_ADDR’] IP du serveur répartisseur de charge entre les 3 serveurs applicatifs IP du client ayant initié la requête
$_SERVER[’HTTP_X_FORWARDED_FOR’] [2] contient IP du client ayant initié la requête ; équivalent de ’REMOTE_ADDR’ dans une pile LAMP classique inexistante

Rester portable avec l’entête (presque) standard [2] $_SERVER['HTTP_X_FORWARDED_FOR']

<?php $remote_ip = $_SERVER['HTTP_X_FORWARDED_FOR'] ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']; ?>
Merci à Marc Meurrens pour cette astuce.

Documentation officielle sur les variables serveurs

Informations générales

Le langage de script PHP est disponible pour tous sur nos serveurs. La version qui tourne sur notre serveur est la version Debian de dotdeb, actuellement la 5.3.17.

Quelques-unes des extensions PHP activées sont :

  • gd2 : gd.so
  • ldap : ldap.so
  • mcrypt : mcrypt.so
  • mysql : mysql.so
    • mysql.default_host = mysql.cassiopea.org
  • mysqli : mysqli.so
    • mysqli.default_host = mysql.cassiopea.org
  • pdo_mysql : pdo_mysql.so
  • pdo_pgsql : pdo_pgsql.so
  • suhosin : suhosin.so
  • xsl : xsl.so
  • yaz : yaz.so

Les membres de Cassiopea peuvent voir les détails de la configuration en faisant appel à la fonction phpinfo() dans leurs propres scripts ou dans l’interface phpmyadmin également disponible.

Si vous avez des questions au sujet de configuration avant de devenir membre de Cassiopea, utilisez le forum ici après ou contactez-nous.

Notes

[1Nous avons à présent un répartiteur de charge et plusieurs serveurs applicatifs qui tournent avec PHP-fpm.

[2Entête propre au répartiteur de charge, c’est un standard de fait.