Annonce

Lorsque vous exposez un problème que vous rencontrez sur votre site, n’omettez pas de bien préciser l’adresse de la page (URL) concernée.

Ouvrez un nouveau sujet de discussion pour poser une question, n'utilisez pas une discussion déjà ouverte si votre problème est différent.
Lorsque votre sujet est résolu, indiquez-le en cliquant sur le lien "Passer le sujet en résolu".

#1 11/12/2010 16:22:03

franceserv
Responsable/CEO FranceServ Hébergement
Inscription : 02/04/2010
Messages : 1 019
Site Web

Certains développeurs PHP m'enervent.

Certains développeurs PHP m'énervent à continuer d'écrire des aberrations de codes.

Premier exemple d'un warning énervant :

Warning: is_writable() [function.is-writable.php]: open_basedir restriction in effect. File(/tmp/httpd/session) is not within the allowed path(s): (***) in ***.php on line 51

Dans cet exemple, le développeur PHP vérifie que le dossier des sessions PHP est accessible en écriture avant de créer ses sessions ... Ce que ne sait pas le développeur est que c'est au serveur PHP de gérer les sessions et que son dossier n'a pas besoins d'être accessible.

Les fonctions PHP " session_start() ", "session_unset()", " session_destroy()" ainsi que la variable d'environnement " $_SESSION['value'] " se suffisent à elles mêmes.

De plus c'est mieux qu'il ne le soit pas, ca évite certaines failles de sécurité comme par exemple un fopen() dans le dossier pour lire en brut les fichiers des sessions et d'y révéler des informations sensibles.

Suite à ça, le développeur bloque alors l'installation du CMS :

Votre session écrit le chemin et le répertoire d'installation n'est pas autorisé en écriture. L'un d'entre eux doit être autorisé en écriture pour continuer l'installation

Du grand n'importe quoi. La victime est l'utilisateur de ce CMS et celle-ci ne peut que penser que le problème provient de l'hébergeur car son script fonctionne ailleurs. Bien en fait non, c'est seulement une sécurité bienveillante supplémentaire qui est en place.

Quand ca arrive, il faut aller modifier le code PHP et commenter la condition du is_writable() à la ligne précisé dans l'erreur ... où informer le développeur sur ce test ridicule.

Autre exemple :

On trouve souvent cette directive dans les fichiers .htaccess :

Options +FollowSymlinks

Cette option est souvent associée par les développeurs PHP à la réécriture d'URL alors que c'est totalement inutile puisqu'elle permet uniquement de suivre les liens symboliques du système.


FranceServ Hébergement - http://www.franceserv.fr
Un souci, une question ? Posez-la sur le forum et si ça demande un contact plus instantané,
une rencontre sur le t'chat IRC peut être définie ensemble.

Hors ligne

Pied de page des forums

[ Générées en 0.465 secondes, 9 requêtes exécutées - Utilisation de la mémoire : 612.88 Kio (pic d'utilisation : 660.78 Kio) ]