Nginx + Apache + Wordpress redireciona para localhost / 127.0.0.1

3

Alguém sabe como corrigir um problema com o Nginx + Apache + Wordpress redirecionando para localhost / 127.0.0.1? Eu tentei muitas correções diferentes, mas nenhuma funcionou para mim.

Eu posso ir ao link bem e usar tudo normalmente. Mas se eu tentar ir para link ele redireciona para 127.0.0.1. Tudo também funciona bem se eu passar pelo Apache.

Aqui estão as partes relevantes do meu nginx.conf:

server {                                
    listen 80;           
    server_name domain.com;      
    root /var/www/html/wordpress;       

    location / {                      
        try_files $uri $uri/ /index.php;
    }                                 

    location ~ \.php$ {
        proxy_pass http://127.0.0.1:8080; 
    }                                                                 
}

Aqui estão as partes relevantes do meu httpd.conf:

Listen *:8080

ServerName <ip>

<VirtualHost *:8080>
    ServerAdmin test@test
    DocumentRoot /var/www/html/wordpress
    ServerName domain.com
</VirtualHost>

É assim que meu log nginx parece:

<ip> - - [19/Jun/2012:22:35:35 +0400] "GET / HTTP/1.1" 301 0 "-" "Mozilla/5.0

É assim que meu log httpd se parece:

127.0.0.1 - - [19/Jun/2012:22:24:46 +0400] "GET /index.php HTTP/1.0" 301 - "-"

-

O endereço do WordPress (URL) e o endereço do site (URL) têm os mesmos http://domain.com

Adicionando proxy_set_header Host $ host; resulta em "Esta página da Web tem um loop de redirecionamento".

Também funciona se eu usar

location / {
  proxy_set_header Host $host;
  proxy_pass http://127.0.0.1:8080;
}

mas não com quaisquer instruções try_files que caiam em outros locais.

    
por jcrcj 19.06.2012 / 20:47

3 respostas

1

Esta é uma pergunta antiga, mas quando me deparo com ...

 location ~ \.php$ {

Não é suficiente fazer solicitações de proxy ao WordPress. Basicamente, você deve fazer o contrário:

Enviar todas as solicitações de arquivos estáticos ao Nginx explicitamente:

location ~ \.(css|js|ico|jpg|jpeg|png|gif|svg|pdf)$ {
    try_files $uri $uri/ /index.html;
}

Em seguida, proxy o resto para o Apache:

location / {
    proxy_set_header Host $host;
    proxy_pass http://127.0.0.1:8080;
}
    
por 25.11.2013 / 10:59
0

Isso provavelmente não é um problema no servidor

vá para link após o login no painel e verifique se o endereço do site (URL) é o mesmo que o endereço do WordPress (URL).

    
por 19.06.2012 / 20:59
0

Por favor, defina proxy_redirect off; no seu bloco location ~ \.php$ . Para mais informações, confira a documentação oficial proxy_redirect .

    
por 20.06.2012 / 04:03