Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

309
Visualizações
NGINX wordpress 404 para todas las subpáginas

Tengo dos problemas pero creo que están relacionados. Los subdirectorios como /wp-admin , /blog devuelven 404, en consecuencia, los enlaces permanentes no funcionan ya que siguen a /blog/category1/page.php

Mi configuración:

Tengo un servidor 192.168.1.4 ejecutando nginx. En otro servidor, 192.168.1.1 , tengo un servidor web apache que utiliza hosts virtuales que alojan mi sitio de wordpress. La configuración funciona bien sin nginx, pero cuando enciendo nginx tengo algunos problemas.

Nginx no funcionará con enlaces permanentes. He usado el valor predeterminado, por lo que ahora es como: http://www.mywebsite.co.uk/?page_id=90 , que funciona bien (siempre que no esté en un subdirectorio).

Todo en el subdirectorio (no en la raíz) se rompe. Incluidas las páginas de administración http://www.mywebsite.co.uk/wp-admin o (antes de desactivar los enlaces permanentes) http://www.mywebsite.co.uk/blog . Todos van a 404 , en concreto: 404 Not Found nginx/1.4.6 (Ubuntu)

Aquí está mi configuración:

 server { server_name mywebsite.co.uk www.mywebsite.co.uk; location / { index index.php; proxy_pass http://192.168.1.1$request_uri; proxy_set_header Host $host; proxy_set_header X-Real-Ip $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; try_files $uri $uri/ =404; #try_files $uri $uri/ /index.php?$args; #not working, error: rewrute or internal redirection cycle while interally redirecting to index.php } }

Como referencia, aquí están mis enlaces permanentes: /blog/%category%/%postname%/

Actualizar

Intenté agregar esto a mi configuración:

 server { ... config above ... location /wp-admin/ { index index.php try_files $uri $uri/ /wp-admin/index.php?$args; proxy_pass http://192.168.1.1$request_uri; proxy_set_header Host $host; } }

esto devuelve un error en el registro:

 rewrite or internal redirection cycle while internally redirecting to "/wp-admin/index.php", client: xxxxx, server: mydomain.co.uk`
over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Tienes bits de una configuración de trabajo. El propósito de nginx en su configuración es revertir el proxy al servidor Apache. Los archivos index y try_files son inapropiados en este caso. Tratar:

 server { server_name mywebsite.co.uk www.mywebsite.co.uk; location / { proxy_pass http://192.168.1.1; proxy_set_header Host $host; proxy_set_header X-Real-Ip $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; } }
over 4 years ago · Santiago Trujillo Relatório

0

¿Por qué no quieres probar wordpress sin apache? la configuración de trabajo sería así:

 server { listen 80; server_name site.com; root /home/www/site.com; access_log /var/log/nginx/log; error_log /var/log/nginx/error.log; index index.php; location / { try_files $uri $uri/ /index.php?q=$uri&$args; } # SECURITY : Deny all attempts to access PHP Files in the uploads directory location ~* /(?:uploads|files)/.*\.php$ { deny all; } location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php-fpm/php.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } location = /favicon.ico { log_not_found off; access_log off; } location = /robots.txt {allow all; log_not_found off; access_log off; } error_page 404 /404.html; location ~ /\. { deny all; } location ~* ^.+\.(js|css|swf|xml|txt|ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf)$ { access_log off; log_not_found off; expires 30d; } }
over 4 years ago · Santiago Trujillo Relatório

0

Encontré en mi caso que el problema era que mod_rewrite no estaba habilitado. Tuve que ejecutar a2enmod rewrite en el servidor con apache

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda