drupal 7 – ¿Cómo codificar el manejo personalizado de errores 404?

Pregunta:

Estaba planeando usar un nuevo nombre de dominio al migrar mi sitio heredado a Drupal. Ya tengo el script php que traducirá las URL antiguas a las URL de Drupal (no estoy usando pathauto para eso).

Ahora existe la posibilidad de que tenga que seguir mostrando contenido en el dominio antiguo (principalmente con fines de SEO). Este sitio no tendrá ningún inicio de sesión o escrituras en absoluto, básicamente solo muestra el contenido y el enlace al nuevo sitio.

¿Cómo interceptaría los 404 que Drupal generaría ahora, preferiblemente a un nivel de arranque muy bajo, ya que podría haber toneladas de solicitudes no válidas?

Actualizar:

Parece que podría usar hook_boot () para interceptar cada solicitud de página con anticipación y luego analizar la cadena de consulta y redirigirla al nodo correspondiente / … página en el mismo sitio.

O, similar a Fast404, podría agregar un include_once a settings.php y hacer la redirección allí:

include_once('.sites/default/modules/myredirect_module/myredirect_module.inc');

¿Habrá una gran diferencia entre esas dos opciones?

Respuesta:

Puede usar el módulo Fast404 (si entiendo su pregunta correctamente).

Drupal tiene costosos errores 404. En un sitio 'promedio' con una carga de módulo 'promedio', puede estar viendo que se consumen 60-100 MB de memoria en su servidor para entregar un 404. Considere una página con un enlace .gif incorrecto y un archivo .css faltante. Esa página generará 2 404 junto con la carga real de la página. Lo más probable es que esté buscando 180 MB de memoria para el servidor de esa página en lugar de los 60 MB que debería ocupar.

Ahí es donde entra Fast 404. Este módulo combina un método muy común para manejar errores 404 de imágenes / archivos faltantes (discutidos aquí y planeados para Drupal 8) con un método creado por dpardo (un co-mantenedor de este proyecto) para entregar súper rápido Páginas de error 404 tanto para imágenes faltantes como para rutas incorrectas. Dependiendo del método de implementación que elija (agresivo o súper agresivo), puede generar errores 404 utilizando menos de 1 MB de memoria en su servidor.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top

web tasarım