Si vous faites de nombreux développements dans le dossier www de votre système Linux, il se peut vous ayez rencontré à plusieurs reprises des erreurs liées aux permissions.
Si tel est le cas, alors dans ce billet, nous vous présenterons les 3 étapes à suivre afin d’appliquer les bonnes permissions sur vos dossiers Web.
Hypothèses
Nous supposons les réalités suivantes :
- vous disposez d’une distribution Linux, que celle-ci soit physique ou virtuelle
- votre serveur web est Apache. Il est configuré, fonctionnel et/ou vos dossiers web se trouvent dans var/www
- vous avez déjà créé le dossier de votre projet web dans le dossier web
3 étapes pour appliquer les bonnes permissions sur les Dossiers Web dans Linux
1. Partager la propriété du dossier avec www-data
Dans plusieurs systèmes sous Linux, c’est l’utilisateur/groupe www-data qui est responsable des processus pilotés par Apache. Pour s’assurer que les processus Apache et Web aient les bons privilèges, il faudrait garantir à www-data la propriété sur les dossiers.
Pour y arriver, vous pourriez rajouter votre utilisateur dans le groupe www-data, ou encore mieux, devenir propriétaire du dossier conjointement avec www-data
sudo chown [VotreNomUtilisateur]:www-data [CheminCompletDossierWeb] -R
exemple : sudo chown soka:www-data mondossier – R
2. Donner les accès complets aux Propriétaires et aux Groupes
La prochaine étape consiste à donner les permissions adéquates aux propriétaires et groupes associés au dossier web concerné.
sudo chmod 775 [CheminCompletDossierWeb] – R
En utilisant le code 775, on s’assure que
- l’utilisateur dispose de tous les droits
- le groupe dispose de tous les droits
- le reste du monde peut lire ou exécuter, mais pas écrire
3. Ajuster la méthode du Système de Fichiers (FileSystem Method)
Si vous développez sous WordPress, il arrive parfois qu’en local, lors de l’ajout ou du retrait des extensions, que le système nous demande des codes d’accès FTP.
Pour éviter cela, il faudrait
- ouvrir le fichier wp-config.php
- rajouter la commande define( ‘FS_METHOD’, ‘direct’ ); juste avant le commentaire /* That’s all, stop editing! Happy publishing. */
- sauvegarder le fichier et le fermer