Pregunta

Creo que descubrí que cuando tengo una página de error personalizado de Errordocument, incluir no siempre funciona porque la inclusión requiere un directorio y la página que tiene el error puede estar en un directorio diferente.

directory1/directory2/thispagecausesa404error.php

directory1/thispagecausesa404error.php

Si tengo include includepage.php; En mi página de Errordocument, entonces no funcionará.

Resolví agregar include_once $_SERVER['DOCUMENT_ROOT'].'/includepage.php'; a la página Errordocument, que resuelve el problema, pero sospecho que estoy haciendo algo mal o no veo la forma correcta de tener una inclusión perfecta en una página de error.

¿Qué estoy haciendo mal?

¿Fue útil?

Solución

Recomiendo nunca confiar en DOCUMENT_ROOT estar configurado correctamente. En su lugar, use una ruta relativa desde el script actual a través del __DIR__ Magia constante, p.ej

include __DIR__ . '/relative/path/from/this/script/to/includepage.php';

La ruta también puede contener el recorrido del directorio principal a través de ../ Si es necesario, por ejemplo

include __DIR__ . '/../../some/dir/includepage.php';
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top