Não é possível fazer upload de mídia para o WordPress

0

Quando vou enviar um arquivo para o meu site WordPress, recebo o seguinte erro:

Unable to create directory wp-content/uploads/2017/03. Is its parent directory writable by the server?

Estou executando o WordPress em um servidor Apache 2.2.2, em uma máquina Linux. A pasta wp-content tem 775 permissões e criei uma pasta /uploads dentro também com 775 permissões. O usuário e o grupo dessas pastas e de todo o diretório de arquivos do WordPress é www-data .

Estou executando o WordPress 4.7.3.

Se isso for digno de nota, na instalação, minha variável upload_path não foi definida. Desde então, configurei-o como wp-content/uploads e criei manualmente o diretório uploads com 775 permissões.

O processo de instalação foi instalar usando wget wordpress.org/latest.tar.gz e instalá-lo a partir daí.

Isso poderia ter algo a ver com isso?

Nenhuma solução encontrada na rede envolvendo permissões variáveis, ou a configuração do php para o modo não seguro, funcionou.

Felicidades!

EDITAR:

Será que outros arquivos e diretórios não pertencentes e agrupados por www-data não têm nada a ver com isso? ls -l faz isso:

-rw-r--r-- 1 nobody nogroup 418 Sep 24 2013 index.php -rw-r--r-- 1 nobody nogroup 19935 Jan 2 12:51 license.txt -rw-r--r-- 1 nobody nogroup 7433 Jan 11 11:46 readme.html -rw-r--r-- 1 nobody nogroup 5447 Sep 27 16:36 wp-activate.php drwxr-xr-x 9 nobody nogroup 4096 Mar 6 10:00 wp-admin -rw-r--r-- 1 nobody nogroup 364 Dec 19 2015 wp-blog-header.php -rw-r--r-- 1 nobody nogroup 1627 Aug 29 2016 wp-comments-post.php -rw-r--r-- 1 root root 3045 Mar 22 21:47 wp-config.php -rw-r--r-- 1 nobody nogroup 2853 Dec 16 2015 wp-config-sample.php drwxrwxr-x 5 www-data www-data 4096 Mar 22 23:09 wp-content -rw-r--r-- 1 nobody nogroup 3286 May 24 2015 wp-cron.php drwxr-xr-x 18 nobody nogroup 12288 Mar 6 10:00 wp-includes -rw-r--r-- 1 nobody nogroup 2422 Nov 20 20:46 wp-links-opml.php -rw-r--r-- 1 nobody nogroup 3301 Oct 24 22:15 wp-load.php -rw-r--r-- 1 nobody nogroup 33939 Nov 20 20:46 wp-login.php -rw-r--r-- 1 nobody nogroup 8048 Jan 10 23:15 wp-mail.php -rw-r--r-- 1 nobody nogroup 16250 Nov 28 23:39 wp-settings.php -rw-r--r-- 1 nobody nogroup 29896 Oct 18 23:47 wp-signup.php -rw-r--r-- 1 nobody nogroup 4513 Oct 14 14:39 wp-trackback.php -rw-r--r-- 1 nobody nogroup 3065 Aug 31 2016 xmlrpc.php

    
por Avocado Surprise 23.03.2017 / 04:37

2 respostas

0

O mais provável é que o problema real seja as permissões e, provavelmente, você não as alterou completamente, conforme necessário, ou o servidor da Web o está executando como um usuário diferente do esperado.

Eu testaria usando sudo assim (substitua / var / www pelo caminho relevante):

sudo -u www-data mkdir -p /var/www/wp-content/uploads/2017/03

Se isso estiver funcionando, eu verificaria "dmesg" para falhas do AppArmor, embora eu não acredite que o AppArmor esteja bloqueando o apache2 / php por padrão da memória.

Se isso não estiver funcionando, eu usaria isso como um teste simples para explorar e corrigir as permissões para trabalhar. Você pode começar verificando todas as permissões de níveis de diretório

ls -lad /var/www /var/www/wp-content /var/www/wp-content/uploads /var/www/wp-content/uploads/2017 /var/www/wp-content/uploads/2017/03
    
por Trent Lloyd 23.03.2017 / 04:42
0

Bem, eu me sinto como um Dunder-Mifflin.

Verificou os processos em execução usando ps aux | egrep '(apache|httpd)' e notou que todos os processos estavam sendo executados em http-web . Confirmei através de ls -l que minhas permissões em todas as minhas pastas do WordPress eram de www-data user e group.

Eu mudei tudo isso usando chown -R http-web:http-web /var/www/html (eu tenho uma pasta html extra dentro de www ).

Fontes:

link

Use chown para definir a propriedade de todas as subpastas e arquivos de uma pasta?

    
por Avocado Surprise 23.03.2017 / 05:16