Conditions d’utilisation
Dans certains cas « paranoïaques » de configuration d’apache (très précisément safe_mode et safe_mode_gid à on + contrôle des dossiers avec UID), l’utilisateur qui fait tourner PHP peut créer des répertoires mais se retrouve incapable d’écrire dedans, ce qui fait planter la génération des fichiers de cache, des fichiers temporaires en général (logs et autres) ainsi que la génération des vignettes et des images typo, le stockage des fichiers dans /IMG...
Dans la majorité des cas, cette configuration s’accompagne de l’impossibilité de modifier le propriétaire des dossiers générés ou le système de droits du serveur.
Si on veut pouvoir malgré tout utiliser SPIP, une solution (partielle !) consiste à créer par FTP toute l’arborescence des dossiers que SPIP est susceptible d’utiliser, puis, de mettre ceux-ci en « écriture pour tous » (777). De cette façon le propriétaire des dossiers est compatible avec le mode de contrôle UID et l’écriture des fichiers dans ces dossiers par SPIP (donc les scripts PHP) est possible.
Le problème de ce « bricolage » est que cela nécessite de créer à la main l’arborescence des dossiers /tmp, /local et /IMG qui comportent de très nombreux sous-dossiers. Pour simplifier la chose, vous trouverez donc en fichier attaché à cet article un zip qui comprend ces 3 dossiers et tous leurs sous-dossiers.
Mode d’emploi
- dézippez dossiers_777_spip_vides.zip dans un coin de votre ordi (en local) ;
- supprimez les dossiers /tmp, /local et /IMG existants (mais vides) sur le site distant ;
- transférez par FTP les 3 dossiers du zip à la racine de votre SPIP ;
- à l’aide de votre client FTP passez ces 3 dossiers en mode « écriture pour tous » (777 ou drwxrwxrwx) en vous assurant que cette autorisation est bien reportée sur tous les sous-dossiers (récursion).
Alternative
Il est possible de configurer SPIP pour qu’il n’utilise pas de sous-dossiers lorsqu’il génère les fichiers de /tmp, /IMG et /local en ajoutant dans le fichier /config/mes_options.php (à créer si nécessaire) la directive suivante :
define('_CREER_DIR_PLAT', true);
À partir de là on aura donc à effacer puis recréer par FTP avec le compte de l’utilisateur propriétaire de l’hébergement les 3 dossiers en questions pour que SPIP génère des fichiers xyz.plat qui remplaceront l’utilisation de l’arborescence dans ces dossiers.
Attention ! cette solution est définitive ! il sera extrêmement compliqué de revenir au fonctionnement normal de SPIP par la suite (en particulier pour tous les fichiers documents attachés aux articles) ce qui bloque quasiment toute possiblité de migrer sur un autre hébergement...
Sur ce sujet, voir aussi : quels sont les differents Droits des Fichiers et dossiers
Aucune discussion
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |