Vient de commencer à utiliser WP-CLI et au lieu d’exécuter avec --allow-root
, a décidé de s’exécuter en tant qu’utilisateur www-data
. Les choses sont bonnes jusqu'à présent mais ne peuvent installer aucun plugin de cette façon:
root@wp-ks320:/var/www/ks320# Sudo -u www-data wp plugin install hello-dolly
Installing Hello Dolly (1.6)
Warning: Could not create directory.
Downloading install package from https://downloads.wordpress.org/plugin/hello-dolly.1.6.Zip...
Unpacking the package...
#
root@wp-ks320:/var/www/ks320# Sudo -u www-data -- wp plugin status hello-dolly
Error: The 'hello-dolly' plugin could not be found.
Continuez à dire Could not create directory
mais créer un répertoire en tant que www-data
n'est pas vraiment un problème:
root@wp-ks320:/var/www/ks320# Sudo -u www-data -- mkdir wp-content/testDir
root@wp-ks320:/var/www/ks320# ls -l wp-content|grep test
drwxr-xr-x 2 www-data www-data 4096 Nov 15 22:58 testDir
Si j'utilise plutôt wp --allow-root plugin install hello-dolly
, cela fonctionne très bien, mais le répertoire a été créé en tant que root
pour une raison évidente. Qu'est-ce qui me manque ici ou que je fais mal Meilleur!
En fonction du problème que vous avez signalé et de la prévisualisation du bash Shell, il semble que le propriétaire/groupe et les autorisations définis pour le docroot du site Web soient incorrects.
Plus que probablement dans votre environnement d'hébergement, le répertoire entier ks320 n'a actuellement pas www-data en tant qu'attribution de groupe.
Il peut appartenir à root mais doit être attribué au groupe www-data (récursivement). L'exécution d'un ls -l
à partir du répertoire /var/www
générera les affectations actuelles des autorisations, du propriétaire et du groupe dans chaque fichier et dossier.
Il ressemble probablement
drwr-xr-x ### root root ### DATE FILE_OR_FOLDER_NAME
mais devrait ressembler à:
drwrwxr-x ### root www-data ### DATE FILE_OR_FOLDER_NAME
Vous pouvez modifier l'attribution de groupe à partir du répertoire /var/www
à l'aide de la commande suivante:
chown -R root:www-data ks320
Ensuite, vous voudrez également vous assurer que le groupe dispose des autorisations de lecture/écriture/exécution sur le répertoire. Vous pouvez accomplir cela à partir du répertoire /var/www
avec:
chmod -R 775 ks320
Une fois que les autorisations et les affectations de groupe aux dossiers ont été définies, votre utilisateur "www-data" devrait pouvoir créer le répertoire du plugin et décompresser les fichiers du plugin wordpress.