Pregunta sobre Arreglando WordPress de Wordpress:

El enlace permanente es un programa de página 404 bastante inválido.

Un usuario preguntó 👇

Lástima, el enlace permanente no es válido y ahora solo la URL predeterminada es válida; cuando selecciono /% jobname% /, en lugar de la página de inicio y la página de archivo personalizado de un tipo de trabajo, todas las demás páginas saltarán a la página 404 No entiendo por qué esto es …

Y cuando abro el mismo tema en otro nombre de dominio, este escenario no sucede, por supuesto, no son las causas del contenido o plugin;

El entorno del sitio es: Nginx 1.12.0, Centos 6.8 y php7.1.4.

(@ tm3909)

Hace 3 años, 1 mes

@bearshang,

Nginx puede ser trivial a la hora de configurar WordPress. WordPress espera apache, por lo que carga la configuración de enlace permanente en un archivo oculto dentro del llamado directorio raíz HTML .htaccess. Este archivo contiene configuraciones para usar Apache, incluida la forma de redirigir los enlaces permanentes a sus sitios.

Sin embargo, con Nginx, deberá hacer esto dentro de su configuración de Nginx. No estoy seguro de dónde reside la configuración en Centos, pero mire en algún lugar dentro de / etc / nginx /. Asegúrate de editar el tuyo ubicación configuración, no configuración global de Nginx.

Deberá reenviar la ubicación y redirigir la configuración al archivo, como:

location / {
    index index.php index.html index.htm;
    try_files $uri $uri/ /index.php?$args;
}

Consulte las fuentes a continuación para obtener información un poco más detallada. También recomendaría seguir el enlace de Nginx WordPress.org para obtener más opciones de configuración.

Fuentes:

https://codex.wordpress.org/Nginx

http://nginxlibrary.com/wordpress-permalinks/

Espero que esto ayude y avíseme si tiene alguna pregunta de seguimiento.

Tom

(@pothi)

Hace 3 años, 1 mes

Para mejorar la respuesta de Tom (que cubre todo para que los enlaces permanentes funcionen) …

Lo siguiente es más preciso, ya que sigue al signo de interrogación index.php archivo, pero si hay cadenas de consulta (o $ args) presentes.

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

.

(@ tm3909)

Hace 3 años, 1 mes

+1 ¡Gracias @pothi!

(@bearshang)

Hace 3 años, 1 mes

@ tm3909 Cómo decir…

Sigo los métodos en la prueba de datos, el problema aún existe …

Esta es mi configuración de nginx:


server
    {
        listen 80;
        server_name dev.trueniu.com *.dev.trueniu.com;
        index  index.php index.html index.htm;
        root  /home/wwwroot/trueniu-php/trueniu;

        include enable-php.conf;
        include wordpress.conf;
    }

wordpress.conf:


access_log /home/wwwlogs/nginx_access.log;

location / {
    index index.php index.html index.htm;
    try_files $uri $uri/ /index.php?$args;
}

Y probé tu método @pothi. Desafortunadamente, parece que no tiene ningún efecto;

Así que supongo audazmente que el problema no debería ser la configuración de nginx. Debido a que uso el método de subdominio de sitios múltiples, el mismo programa de wordpress sobre el rendimiento de otros sitios de subdominios es bueno, y no aparece este problema.

Debe haber algo más que haga que suceda este problema.-_-

(@bearshang)

Hace 3 años, 1 mes

@ tm3909 @pothi

Afortunadamente, encontré la razón, no el resultado de la configuración de nginx, sino la causa de un plugin multilingüe, el plugin se llama ‘Polylang’

Utilizo este plugin y al mismo tiempo agrego un lenguaje que podría destruir la estructura del enlace permanente, provocando que el enlace permanente falle …

¡Muchas gracias por tu respuesta!

(@bearshang)

Hace 3 años, 1 mes

@ tm3909 @pothi

Encontré una solución al problema:


add_action( 'init', 'flush_rewrite', 99 );
function flush_rewrite()
{
    flush_rewrite_rules();
}

¿Solucionó tu problema??

0 / 0

Deja una respuesta 0

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *