Nginx como proxy para o servidor Apache executando o WordPress

2

Estou enfrentando um problema semelhante ao esta pergunta onde estou usando o Nginx como proxy para o servidor Apache (Ubuntu) executando o WordPress. Todos os links internos do site fornecem redirecionamentos 301 para o host local.

Por exemplo, o link: wwww.example.com/internal-link redireciona para localhost/internal-link , o que dá erro 404.

As configurações do Apache são as seguintes:

<VirtualHost *:80>
        <Directory /var/www/html>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
                Require all granted
        </Directory>

        ServerAdmin [email protected]
        ServerName example.com
        ServerAlias www.example.com
        ServerAlias *.example.com
        DocumentRoot /var/www/html
 ...

O arquivo de configuração Nginx é o seguinte:

server {
       # Where IP is server IP and example is the domain name
       listen       IP:80;
       server_name  static.example.com;

       location / {
           proxy_pass http://localhost:8480;
           proxy_set_header X-Real-IP $remote_addr;
       }

}

server {
       listen       IP:80;
       server_name  example.com;
       rewrite      ^ $scheme://www.example.com$request_uri redirect;
}

server {
        listen       IP:80;            # your server's public IP address
        server_name  www.example.com;   # your domain name

    location / {
        proxy_pass http://localhost:8020;
        proxy_set_header X-Real-IP $remote_addr;
    }
}       

O .htaccess é o padrão gerado pelo WordPress:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

aqui estão alguns dos registros do log de acesso do Apache:

10.0.2.2 - - [15/Jul/2016:07:11:31 -0400] "GET /link/ HTTP/1.0" 301 335 "-" "Mozilla/5.0 (compatible; Cliqzbot/1.0 +http://cliqz.com/company/cliqzbot)"
10.0.2.2 - - [15/Jul/2016:07:08:02 -0400] "GET /link/ HTTP/1.0" 404 5396 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:21.0) 

alguma ideia do que está causando isso e como corrigi-lo?

    
por Rain Man 15.07.2016 / 22:12

1 resposta

1

Eu uso o seguinte bloco do servidor NGINX para proxy_pass de todos os pedidos para o Servidor HTTP Apache local:

# cat /usr/local/etc/nginx/conf.d/apache24.conf 
server  {
    listen 80;

    location    /   {
        proxy_pass  http://127.0.0.1;
        proxy_set_header    Host    $host;
        proxy_set_header    X-Forwarded-For $remote_addr;
        proxy_set_header    X-Real-IP   $remote_addr;
        proxy_pass_header   server;
    }
}
# 

e o servidor HTTP do Apache VirtualHost configurou o caminho normal.

    
por 21.07.2016 / 17:26