Comment configurer FTP pour l'utiliser dans wordpress hébergé localement

24

J'ai installé wordpress sur mon ubuntu 10.10 desktop edition et j'essaie d'installer le plugin depuis le navigateur (je sais que je peux le déposer dans le contenu wp / plugin mais je veux le faire via le navigateur web en utilisant FTP) écran lorsque j'essaie de définir la mise à jour automatique ou d'installer un plugin à partir du navigateur Web.

texte alternatif

Je fournis le nom d'hôte 127.0.0.1 et le nom d'utilisateur et le mot de passe que j'utilise pour me connecter à wordpress. Je reçois l'erreur

Nom d'utilisateur / mot de passe incorrect et ne peut pas se connecter à 127.0.0.1:20

Je pense que je vais devoir accorder à un utilisateur un mot de passe ftp mais je ne sais pas comment. J'ai déjà installé vsftp mais quand j'essaye "ftp 127.0.0.1" j'obtiens -

$ ftp 127.0.0.1
Connected to 127.0.0.1.
220 (vsFTPd 2.3.0)
Name (127.0.0.1:gaurav): root
331 Please specify the password.
Password:
530 Login incorrect.
Login failed.
ftp> 

Wordpress s'exécute localement sur mon bureau Ubuntu.

Gaurav Butola
la source

Réponses:

14

Eh bien, votre connexion Wordpress et votre connexion FTP sont deux choses différentes. J'ai vu que vous utilisez vsFTPd, donc une chose facile que vous pouvez le faire:

Modifiez le fichier de configuration vsFTPd:

gksu gedit /etc/vsftpd.conf

Ajoutez ceci à la fin:

local_enable=YES

Redémarrez votre serveur vsFTPd:

sudo /etc/init.d/vsftpd restart

Vous devriez maintenant pouvoir vous connecter à votre FTP en utilisant votre identifiant Ubuntu.

Nyamiou The Galeanthrope
la source
et comment accorder à un utilisateur (utilisateur wordpress) un accès FTP qui peut utiliser FTP sur le réseau
Gaurav Butola
Je ne voudrais pas non plus me connecter en tant que root, mais créer un utilisateur factice, le faire partie de votre groupe www-data et l'utiliser pour pousser les mises à jour / installer
csgeek
J'ai eu ce même problème et je voulais juste ajouter pour tous ceux qui traversent cela que vous devez utiliser '127.0.0.1' et non 'localhost'. Ou du moins je l'ai fait. A également dû utiliser FTP et non FTPS.
Jay
-1 Même s'il est répertorié comme meilleure réponse, il manque les informations selon lesquelles write_enable est mis en commentaire par défaut. Si vous ne commentez pas, votre solution ne fonctionne toujours pas.
Jakke
4

Ajoutez simplement cette ligne à wp-config.php

define('FS_METHOD', 'direct');

Alors ce sera OK.

Abul Kashem Shamim
la source
Y a-t-il des inconvénients avec cette méthode? Semble être le meilleur / le plus facile pour moi, mais je peux me tromper.
JoniVR
3

Si vous utilisez le fichier par défaut, le problème que je rencontrais ne voyait pas activer l'accès en écriture. Cela a résolu mes problèmes.

listen=YES
local_enable=YES
write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
Chris Schafer
la source
Le même problème ici, write_enable est mis en commentaire par défaut. Merci pour le conseil. Il n'est mentionné nulle part ici, mais j'ai également changé le répertoire personnel de l'utilisateur ftp wordpress en / var / www / html (ou quel que soit le chemin d'accès au site). Je ne sais pas si cela est réellement nécessaire.
Jakke
3

Pour moi, changer la propriété du dossier wordpress a résolu le problème.

sudo chown -R www-data wordpress
Leszek
la source
Cela a fonctionné tout de suite pour moi!
Max Kulik
3

J'ai eu le même problème.

Quand j'ai créé mon serveur Ubuntu, j'ai installé un site wordpress et à chaque fois que je voulais mettre à jour un plugin, j'avais besoin d'un accès ftp qui était vraiment ennuyeux. Je savais que je pouvais simplement ajouter les détails ftp dans la configuration pour wordpress mais j'étais comme NAH! Il s'est donc avéré que wordpress ne peut pas écrire de fichiers dans le répertoire wp-content car apache n'a pas l'autorisation de modifier le répertoire, c'est ainsi que je l'ai corrigé.

Copiez le fichier de groupe dans des groupes du même répertoire

sudo cp /etc/group /etc/groups

Donnez ensuite l'autorisation récursive à apache

sudo chown -R www-data:root /var/www

C'est ça.

Une autre façon de le faire est d'éditer des envars apache

sudo nano /etc/apache2/envvars

Modifiez les lignes où il est dit

export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data

Et remplacez www-data par votre nom d'utilisateur pour ubuntu

export APACHE_RUN_USER=USERNAME
export APACHE_RUN_GROUP=USERNAME

maintenant redémarrez apache

sudo service apache2 restart

puis assurez-vous que votre compte dispose des autorisations sur le répertoire

sudo chown -R USERNAME:USERNAME /var/www

Si cela ne fonctionne pas pour vous, répondez simplement.

user1116826
la source
1

Pour configurer vsftpd, ouvrir vsftpd.confdans /etcet copier - coller ce qui suit dans votre vsftpd.conf

listen=YES
anonymous_enable=YES
anon_root=/srv/ftp
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
ftpd_banner=Welcome to my FTP server.
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem

Remarque:
vous devez créer un nouveau répertoire à l'intérieur /srvsous le nom ftp ou quel que soit le nom que vous préférez.Si vous préférez un autre nom, vous devez changer la ligne anon_root=/srv/ftpen anon_root=/srv/toyourfoldernamemaintenant placez tous vos fichiers dans le dossier / srv / ftp

Pour tester vos paramètres dans le type localhost:

ftp://127.0.0.1
Si vous avez des problèmes, faites le moi savoir.

Pour démarrer / arrêter / redémarrer vsftpd:

sudo service vsftpd start
sudo service vsftpd stop
sudo service vsftpd restart
karthick87
la source
1
+1 poursudo service vsftpd ....
solgar