Cela fait maintenant une semaine que je suis confronté à ce problème, en parcourant divers sites web, je n'arrive pas à le résoudre.
J'ai installé Apache2 et un site web Wordpress, situé dans le dossier d'un utilisateur à l'adresse suivante /home/<user>/www
.
Maintenant, le site web fonctionne, mais l'installation de plugins depuis l'interface web (et tout ce qui nécessite un accès en écriture - modification des paramètres, téléchargement de médias, etc.) ne fonctionne pas, car wordpress (plutôt apache) n'a pas d'accès en écriture à ces fichiers.
die /home/<user>/www
et tout ce qui se trouve en dessous appartient à l'utilisateur et au groupe <user>
.
J'ai déjà essayé plusieurs solutions, mais aucune n'a fonctionné, notamment :
-
Changer le propriétaire de
/home<user>/www
àwww-data:www-data
. Très bien - honnêtement, je n'ai pas essayé cette solution, car je n'en veux pas. Si vous faites cela pour tous les utilisateurs du serveur, ils auront accès à tous les dossiers, mais ils ne devraient pouvoir accéder qu'à leur dossier personnel, pas aux autres. -
Ajout de
www-data
au groupe de l'utilisateur. Je pensais que cela pourrait fonctionner, mais apparemment ce n'est pas le cas. Le sitewww-data
est bien dans le groupe de l'utilisateur (vérifié avec la commande id), mais cela ne semble toujours pas fonctionner. -
Définir une ACL sur le répertoire personnel de l'utilisateur. J'ai fait cela aussi et j'ai donné
www-data
rwx accès au répertoire personnel, et pourtant ça n'a toujours pas aidé.
Au cas où vous seriez intéressé, le /home/<user>/
et tous les fichiers/répertoires en dessous ont la permission 775.