Evite sincronizar wp-content / uploads

Se você já fez qualquer desenvolvimento WordPress (especificamente manutenção de longo prazo), você saberá que é tedioso manter seu ambiente local atualizado com a pasta wp-content / uploads.

Esta pasta, como você já deve saber, é o destino de qualquer ativo carregado por meio da interface de administração do WordPress. À medida que um site WordPress amadurece, os editores de conteúdo carregam megs e megs de imagens e, em alguns casos, tenho visto a biblioteca de mídia crescer para tamanhos medidos em Gigabytes com mais facilidade! Muitas dessas imagens são incorporadas ao conteúdo de postagens e páginas do WordPress. Portanto, se você puxar uma cópia do banco de dados ativo para usar com o desenvolvimento local, verá muitas imagens quebradas. Claro, você pode simplesmente baixar a pasta inteira usando scpou rsync, mas existe uma maneira melhor.

Proxy wp-content / uploads

Colocar o seguinte trecho em um arquivo .htaccess na pasta wp-content / uploads em seu servidor local enviará solicitações de proxy para o servidor remoto.

<IfModule mod_rewrite.c>
RewriteEngine On


RewriteCond %{HTTP_HOST} dev.example.com # Only perform the proxy on dev site

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*) http://www.example.com/wp-content/uploads/$1 [L,P]

</IfModule>

Observe a primeira linha de nossa condição de reescrita (aquela que faz referência a HTTP_HOST), que protege nossos servidores de produção se este arquivo .htaccess for acidentalmente implantado ao vivo.

Você deve ter o mod proxy habilitado para que isso funcione. No Ubuntu, o comando `sudo a2enmod proxy proxy http sudo apache2ctl restart` fará o truque.followed by a

Conclusão

Usar este método economizará tempo e largura de banda. Embora não o tenha testado extensivamente, pretendo usá-lo em todos os meus futuros projetos WordPress.