Je viens d'installer un VPS et j'ai installé tout ce dont j'avais besoin et il fonctionne bien. Le problème est que je veux qu'il puisse se mettre à jour automatiquement et me permettre d'installer des plugins sans ftp. Ceci est ma configuration:
chgrp -R
) en "wordpress". J'ai également effectué "chmod g + s" sur le dossier afin que les nouveaux fichiers appartiennent au groupe "wordpress".Avec tout ce qui précède, je ne peux toujours pas installer un nouveau plugin (et probablement des thèmes ou une mise à jour), mais si je change le propriétaire des fichiers en "wordpress", tout va bien. N’est-il pas possible que l’utilisateur soit propriétaire des fichiers; si je les télécharge avec sftp, je n’ai pas à chown
.
TL; DR
Est-il possible d'avoir des fichiers WordPress appartenant à un utilisateur qui se trouve dans le même groupe que le groupe qui exécute nginx/php-fpm tout en pouvant installer des plugins?
modifier:
Plus d'informations:
nginx.conf en haut contient user wordpress wordpress
et pool.d/www.conf
contient 2 lignes avec user = ilyesnl
group = ilyesnl
. J'ai également confirmé que les deux processus étaient exécutés par l'utilisateur wordpress
.
WordPress vérifie spécifiquement que le propriétaire du fichier des fichiers qu'il crée est identique à la valeur renvoyée par getmyuid .
Ce qui signifie que s'il crée des fichiers avec un propriétaire différent de celui des fichiers WordPress eux-mêmes, il n'utilisera pas le mode "direct".
Le même groupe ne suffit pas. Les fichiers écrits par WordPress doivent avoir les mêmes droits de propriété que les fichiers WordPress eux-mêmes, sinon, ils ne le feront pas et essayeront plutôt d'autres méthodes, telles que les autorisations FTP. Cela signifie que le processus PHP doit être exécuté par le même utilisateur que celui qui possède les fichiers WordPress.
Donc, si votre PHP est exécuté en tant que "wordpress" mais que les fichiers appartiennent à "utilisateur", vous obtenez le contenu FTP à la place.
Le test pour cela est dans la fonction get_filesystem_method()
.