htaccess ErrorDocument не отображается

я пытаюсь показать пользовательское сообщение об ошибке, когда страница не найдена, и в моем .htaccess я добавил такую ​​​​строку:

ErrorDocument 404 error/404.html

но это просто показывает мне 404.html на экране вместо отображения страницы 404.html, и если я напишу это так

ErrorDocument 404 /error/404.html

чем это дает мне ошибку

Кроме того, при попытке использовать ErrorDocument для обработки запроса возникла ошибка 404 Not Found.

Есть ли другой способ сделать это, чтобы показать фактическую html-страницу с ошибкой? Спасибо, Даниил!


person Pacuraru Daniel    schedule 09.09.2013    source источник
comment
Объясните: показывает мне 404.html на экране вместо отображения страницы 404.html   -  person Ravi K Thapliyal    schedule 09.09.2013
comment
Какой у вас корень документа? Путь должен быть относительно корня вашего документа. URLs can begin with a slash (/) for local web-paths (relative to the DocumentRoot), or be a full URL which the client can resolve. http://httpd.apache.org/docs/2.2/mod/core.html#errordocument   -  person showdev    schedule 09.09.2013
comment
на локальном хосте в папке сайта у меня есть .htaccess и ошибка подпапки с файлом 404.html внутри, когда я запрашиваю страницу, которой нет в папке сайта, errordocument работает, но вместо этого показывает содержимое страницы 404.html, это просто показывает, что браузер пишет с текстом 404.html на нем.. на самом деле текст error/404.html   -  person Pacuraru Daniel    schedule 09.09.2013
comment
если я загружаю контент в Интернет, он работает, начиная с косой черты (/), но на локальном хосте он не работает   -  person Pacuraru Daniel    schedule 09.09.2013
comment
Разве это не должно быть: ErrorDocument 404 /site/error/404.html?   -  person anubhava    schedule 09.09.2013
comment
вау, ты прав: D большое спасибо, теперь это работает :)   -  person Pacuraru Daniel    schedule 09.09.2013
comment
Хорошо, я опубликую это как ответ, чтобы помочь будущим посетителям ответить на этот вопрос.   -  person anubhava    schedule 09.09.2013


Ответы (1)


Судя по вашему описанию, ваша папка error находится внутри папки DOCUMENT_ROOT/site. В этом случае следующая директива полного пути ErrorDocument должна работать для вас:

ErrorDocument 404 /site/error/404.html
person anubhava    schedule 09.09.2013