Cuando llamo a nuestro sitio "www.example.com/contact-us" obtengo el siguiente error:
Vaya, parece que esta solicitud intentó crear un bucle infinito. No permitimos tales cosas aquí. Somos un sitio web profesional!
Si llamo al sitio con "www.example.com/node/5", la página de contacto se muestra muy bien.
Cuando verifico el alias de ruta en / admin / config / search / path / edit / 6, la ruta del sistema y el alias están configurados correctamente.
Existe otro problema para otro alias, cuando llamo "www.example.com/staff" me redirigen a la página de inicio "www.example.com". Una vez más, el alias está configurado correctamente.
Estamos utilizando Drupal 7 y los módulos i18n_redirect y redirect.
7
redirection
path-aliases
Matías
fuente
fuente
Respuestas:
Edite su página y vaya a redirecciones de URL . Encuentre la ruta de redireccionamiento con el mayor número de conteos y elimínela. Haga clic en guardar y luego vea la página.
Avísame si eso solucionó tu problema
fuente
Actualización: el problema Drupal # 1796596 se cometió a partir de Redirect 1.0-rc2 (junio de 2015). La solución correcta para este problema ahora es actualizar a la última versión estable del módulo Redirect y luego ejecutar actualizaciones de la base de datos. Cualquier redirección circular que tenga se limpiará de forma segura.
Este problema se produjo debido a un error en el módulo de redireccionamiento. Lo activa cambiando la URL de una página (o tal vez solo su título, si está usando pathauto) y luego volviéndola a cambiar a lo que solía ser.
Por ejemplo, supongamos que tenía una página llamada "empresa" y cambié el título a "Nuestra empresa" (que cambió el alias de URL a nuestra empresa). Entonces decidí que en realidad lo prefería de la primera manera, así que edito el nodo nuevamente y cambio el título nuevamente a "Compañía". En ese momento, el mensaje de error " Vaya, parece que esta solicitud intentó crear un bucle infinito. No permitimos tales cosas aquí. ¡Somos un sitio web profesional! " Comenzaría a aparecer en la página de la Compañía.
Hay tres formas de solucionar esto, dependiendo de lo que sea más fácil para usted. Se extienden en dificultad / valentía de arriba a abajo.
El método Drupal / PHP
Hay un error largo de Drupal sobre el tema: Problema # 1796596 y hay un buen parche de trabajo que soluciona el problema en el comentario # 124 .
Con suerte, esta solución pronto se comprometerá en el módulo Redirect para descargar. Sin embargo, ha pasado más de un año sin signos de progreso en ese frente.
El método SQL
La solución más rápida para el problema es con una consulta SQL a la base de datos, con algo como a continuación. TENGA CUIDADO y solo pruebe este método si sabe lo que está haciendo: pruébelo primero en una copia de desarrollo del sitio y asegúrese de tener una copia de seguridad y pruebe los cambios inmediatamente después en caso de que necesite retroceder. Tenga mucho cuidado y pruebe bien la primera consulta si está usando i18n ... Ejecute la primera consulta para mostrar qué se eliminaría y la segunda para eliminarla.
Si no sabe cómo aplicar parches o ejecutar consultas SQL, debe solucionar el problema manualmente. No se preocupe, esto es bastante fácil de hacer (pero consume mucho tiempo en comparación con los otros métodos):
El método manual:
Para cada una de las páginas donde se muestra el mensaje de advertencia:
fuente
Si tenemos los mismos redireccionamientos al alias del nodo, otra forma de corregir este error es ejecutar un script que atraviese todo el nid (en el caso de los nodos) y ver si el alias de cada nodo tiene una redirección con el mismo nombre, si corresponde. está eliminado.
Puede ejecutar este código en la opción "Ejecutar código PHP" del menú de desarrollo.
Este formulario es similar a "El método SQL", solo ejecuto esto desde Drupal y no en la base de datos.
fuente
Aplique el parche en Fix y evite las redirecciones circulares (o espere hasta que llegue al módulo).
fuente
Crear script de Drush:
Guárdelo en un archivo y ejecútelo desde la base de código de su sitio utilizando
drush php-script [PATH_TO_SCRIPT]
, y eliminará cualquier redireccionamiento que choque con los alias de URL.fuente
¿Cómo puedo evitar mostrar el mensaje de error "bucle de redireccionamiento" en el servidor de producción en el futuro? Ya configuré el informe de errores "ninguno" en esta página - admin / config / development / logging
fuente
La única forma después de probar muchos parches fue abrir el archivo redirect.module y omitir la línea # 989
fuente
Mi inglés no es muy bueno, pero creo que no hay problema en leerme. Tengo ese problema antes y lo resolví, así que eliminé el módulo REDIRECT. Saludos KoZnaZna sitio Equipo - Simon
fuente