O WordPress pede credenciais de FTP, mesmo que o proprietário de todo o / var / www seja www-data

3

Estou tentando fazer com que o WordPress seja executado na minha instalação local do Ubuntu 12.10.

Quando tento instalar o themes/plugins , ele me pergunta por credenciais de FTP.

Estou tentando fazer isso funcionar por dois dias agora. Em toda parte na web, você deve alterar o owner:group do seu diretório do WordPress para qualquer owner:group que execute seu servidor Apache - no meu caso, www-data:www-data . Eu fiz isso, e até tentei configurar permissões para todo o diretório /var/www para o 777, reiniciando o Apache e todo o sistema. Mas o WordPress ainda está me pedindo as credenciais de FTP. O que mais poderia ser isso?

    
por Dmitry Shvedov 03.12.2012 / 06:59

2 respostas

1

Nesse meio tempo, desisti e decidi configurar o FTP para contornar o problema. Ao fazer isso, descobriu-se que o wordpress está realmente tentando encontrar arquivos no diretório / srv (??!) E não em / var / www, como eu assumi anteriormente, que se parece com isso:

#:/srv/www/wp-content/localhost$ ls -l
total 12
drwxrwxr-- 2 www-data www-data 4096 Dec  2 15:58 blogs.dir
lrwxrwxrwx 1 www-data www-data   39 Dec  2 15:58 languages -> /var/lib/wordpress/wp-    content/languages
lrwxrwxrwx 1 www-data www-data   37 Dec  2 15:58 plugins -> /var/lib/wordpress/wp-content/plugins
lrwxrwxrwx 1 www-data www-data   36 Dec  2 15:58 themes -> /var/lib/wordpress/wp-content/themes
drwxrwxr-x 3 www-data www-data 4096 Dec  3 13:20 upgrade
drwxrwxr-- 3 www-data www-data 4096 Dec  2 17:53 uploads

Exceto que o usuário: group foi definido como root: root para todos. O mesmo foi para tudo em / var / lib / wordpress. Assim que mudei as permissões em todos os lugares para www-data: www-data, as coisas começaram a funcionar sem FTP.

Agora, o problema é que, se eu, por exemplo, instalar um tema automaticamente, o tema não pode ser ativado corretamente. Acontece que instala no lugar errado:

#:/var/lib/wordpress/wp-content/themes$ ls -l
total 12
lrwxrwxrwx 1 www-data www-data   48 Dec  3 12:11 index.php -> /usr/share/wordpress/wp-content/themes/index.php
drwxr-xr-x 7 www-data www-data 4096 Dec  3 13:38 montezuma
drwxr-xr-x 8 www-data www-data 4096 Dec  3 13:22 responsive
lrwxrwxrwx 1 www-data www-data   51 Dec  3 12:11 twentyeleven -> /usr/share/wordpress/wp-content/themes/twentyeleven
lrwxrwxrwx 1 www-data www-data   48 Dec  3 12:11 twentyten -> /usr/share/wordpress/wp-content/themes/twentyten
drwxr-xr-x 6 www-data www-data 4096 Dec  3 13:37 twentytwelve

Então eu tenho que ir manualmente para / srv / www / wp-content e mover esses montezuma, responsivos e vinte e três para / usr / share / wordpress e ligar de volta com ln -s. Dor no rabo.

Basicamente, a única solução que encontrei foi não usar o método apt-get de instalar o wordpress, mas faça isso:

cd /var/www    
sudo unlink wordpress
sudo wget http://wordpress.org/latest.tar.gz
sudo tar xvfz latest.tar.gz 

Agora tudo funciona como esperado. Solução final - instale o wordpress manualmente e não no repositório do Ubuntu.

    
por Dmitry Shvedov 03.12.2012 / 07:30
0

Um dos dois:

Ou

  1. Execute o PHP como FastCGI, que pode ser executado como um usuário diferente do servidor da Web.

  2. Instale a extensão ssh para o PHP (sudo apt-get install libssh2-php)

por ptheo 07.12.2012 / 22:57