Jak skonfigurować FTP do używania w lokalnie hostowanym wordpress


24

Zainstalowałem WordPress na mojej wersji Ubuntu 10.10 Desktop i próbuję zainstalować wtyczkę z przeglądarki (wiem, że mogę upuścić ją na wp-content / plugin, ale chcę to zrobić przez przeglądarkę internetową za pomocą FTP) ekran, gdy próbuję ustawić automatyczną aktualizację lub zainstalować wtyczkę z przeglądarki internetowej.

alternatywny tekst

Podaję nazwę hosta 127.0.0.1 oraz nazwę użytkownika i hasło, których używam do logowania do wordpress. Dostaję błąd

Nazwa użytkownika / hasło Niepoprawne i nie można połączyć się z 127.0.0.1:20

Myślę, że będę musiał przyznać użytkownikowi hasło ftp, ale nie wiem jak. Mam już zainstalowany vsftp, ale gdy spróbuję „ftp 127.0.0.1”, otrzymuję -

$ 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 działa lokalnie na moim Ubuntu Desktop.

Odpowiedzi:


14

Cóż, twój login Wordpress i login FTP to dwie różne rzeczy. Widzę, że używasz vsFTPd, więc jedną łatwą rzeczą, którą możesz to zrobić:

Edytuj plik konfiguracyjny vsFTPd:

gksu gedit /etc/vsftpd.conf

Dodaj to na końcu:

local_enable=YES

Uruchom ponownie serwer vsFTPd:

sudo /etc/init.d/vsftpd restart

Teraz powinieneś być w stanie połączyć się z FTP za pomocą loginu Ubuntu.


i jak mogę przyznać użytkownikowi (użytkownikowi wordpress) dostęp do FTP, który może korzystać z FTP przez sieć
Gaurav Butola,

Nie zalogowałbym się również jako root, ale stworzyłem fikcyjnego użytkownika, uczynię go częścią twojej grupy danych www i
użyję

Miałem ten sam problem i po prostu chciałem dodać dla wszystkich innych, którzy przechodzą przez to, że musisz użyć „127.0.0.1”, a nie „localhost”. A przynajmniej tak zrobiłem. Musiałem także używać FTP, a nie FTPS.
Jay

-1 Chociaż jest wymieniony jako najlepsza odpowiedź, brakuje informacji, że write_enable jest domyślnie komentowany. Jeśli nie usuniesz komentarzy, Twoje rozwiązanie nadal nie działa.
Jakke

4

Wystarczy dodać tę linię do wp-config.php

define('FS_METHOD', 'direct');

Wtedy będzie OK.


Czy ta metoda ma jakieś wady? Wydaje mi się to najlepsze / najłatwiejsze, ale mogę się mylić.
JoniVR

3

Jeśli korzystasz z pliku domyślnego, problem, który miałem, nie był w stanie włączyć dostępu do zapisu. To rozwiązało moje problemy.

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

Ten sam problem tutaj, write_enable jest domyślnie komentowany. Dzięki za wskazówkę. Nigdzie nie wspomniano tutaj, ale zmieniłem również katalog domowy użytkownika wordpress ftp na / var / www / html (lub jakąkolwiek ścieżkę do strony). Nie jestem pewien, czy jest to rzeczywiście potrzebne.
Jakke

3

Dla mnie zmiana właściciela folderu wordpress rozwiązała problem.

sudo chown -R www-data wordpress

To zadziałało dla mnie od razu!
Max Kulik

3

Miałem ten sam problem.

Kiedy utworzyłem mój serwer Ubuntu, instalowałem witrynę Wordpress i za każdym razem, gdy chciałem aktualizować wtyczkę, potrzebowałem dostępu ftp, co było naprawdę denerwujące. Wiedziałem, że mogę po prostu dodać szczegóły ftp w konfiguracji dla wordpress, ale byłem jak NAH! Okazało się, że wordpress nie może zapisywać plików do katalogu wp-content, ponieważ apache nie ma uprawnień do edycji katalogu, więc tak to naprawiłem.

Skopiuj plik grupy do grup w tym samym katalogu

sudo cp /etc/group /etc/groups

Następnie przyznaj uprawnienia rekurencyjne apaczowi

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

To jest to.

Innym sposobem na to jest edycja envvars apache

sudo nano /etc/apache2/envvars

Edytuj wiersze tam, gdzie jest napisane

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

I zamień dane www na swoją nazwę użytkownika dla Ubuntu

export APACHE_RUN_USER=USERNAME
export APACHE_RUN_GROUP=USERNAME

teraz uruchom ponownie apache

sudo service apache2 restart

a następnie upewnij się, że twoje konto ma uprawnienia do katalogu

sudo chown -R USERNAME:USERNAME /var/www

Jeśli to nie zadziała, po prostu odpowiedz.


1

Aby skonfigurować vsftpd, należy otworzyć vsftpd.confw /etci skopiuj wklej następujący w swojej 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

Uwaga:
powinieneś utworzyć nowy katalog /srvw nazwie ftp lub jakiejkolwiek innej nazwie, którą wolisz. Jeśli wolisz inną nazwę, zmień wiersz anon_root=/srv/ftpna anon_root=/srv/toyourfoldernameTeraz umieść wszystkie swoje pliki w folderze / srv / ftp

Aby przetestować ustawienia w localhost wpisz:

ftp://127.0.0.1
Jeśli masz jakieś problemy, daj mi znać.

Aby uruchomić / zatrzymać / zrestartować vsftpd:

sudo service vsftpd start
sudo service vsftpd stop
sudo service vsftpd restart

1
+1 zasudo service vsftpd ....
solgar

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.