Je vais faire simple, je vais vous donner la définition selon
la doc PHP :
Citation : La doc PHPLe « Safe Mode » est le mode de sécurité de PHP : une solution au problème de partage de PHP sur un serveur. Ce système pêche au niveau de l'architecture car il n'est pas correct de tenter de résoudre ce problème au niveau de PHP, mais les solutions alternatives basées sur le serveur web et l'OS ne sont pas réalistes. De nombreux intervenants, notamment les fournisseurs d'hébergement, utilisent le « Safe Mode ».
En d'autres termes (parce que la doc n'explique pas suffisamment), quand le
Safe Mode est activé, le serveur vérifie que vous êtes bien le propriétaire du fichier/dossier avant d'interagir avec lui, que ce soit pour de la simple lecture ou de la manipulation.
Ok, mais si ce fichier est sur mon FTP, j'en suis donc le propriétaire, non ?
D'une certaine manière oui, mais d'une autre non. Donc oui le FTP vous appartient. Mais sur tout système UNIX qui se respecte, il y a des droits sur les fichiers. Chaque utilisateur appartient à un groupe. C'est le principe même du CHMOD si vous le saviez déjà.
Prenons en exemple un réseau UNIX sur lequel tous les professeurs et étudiants d'une université peuvent se connecter.
Chaque personne aura son propre
UID. Les professeurs appartiendront au groupe
professeurs, tandis que les étudiants au groupe
étudiants. Ces deux groupes ont d'ailleurs un
GID également ! Par conséquent, deux professeurs ou deux étudiants auront le même GID mais pas le même UID.
Le Safe Mode fonctionne sur cette base, l'UID cherchant à modifier le fichier doit être égale à celui à qui appartient le fichier. En utilisant les chemins relatifs basiques, l'UID du fichier est celui de l'utilisateur
root, mais votre UID à vous (celui du script PHP en vérité) n'est pas le même que celui de
root, l'accès est donc refusé.
Et PHP, plutôt que de vous retourner une erreur claire et simple à comprendre du genre «
Vous n'avez pas les droits suffisants pour interagir avec ce fichier/dossier », ne vous dit rien et vous laisse chercher pendant des plombes d'où provient l'erreur !
Et grâce à ce tutoriel, votre calvaire se termine enfin.

Avant de voir comment résoudre ces problèmes de Safe Mode, nous allons voir les conséquences de son activation.