Где сохранить файл .htaccess на Apache для страницы 404

У меня есть веб-сервер Apache, работающий на Amazon EC2, и я пытаюсь создать пользовательскую страницу 404, что я и сделал, но я хочу, чтобы она появлялась, когда запрашивается опечатка или неправильный URL-адрес. Это мой код .htaccess

ErrorDocument 404 /404.html

Я сохранил свой файл .htaccess в каталоге /var/www/html. Я делаю что-то неправильно? Потому что, когда я ввел неправильный URL-адрес, ошибка Apache 404 по умолчанию продолжает появляться, и я не хочу, чтобы это отпугивало посетителей. Это возможно? Спасибо!!!


person Shalin Shah    schedule 18.05.2012    source источник


Ответы (2)


подтвердите, что для директивы AllowOverride установлено значение All в вашем httpd.conf

во-вторых, .htaccess должен храниться в корневом каталоге вашего кода.

person nikunj    schedule 18.05.2012
comment
Я попытался получить доступ к своему файлу httpd.conf, но не могу его найти. И чтобы .htaccess работал, я положил его в корневой каталог, но все равно не работает. - person Shalin Shah; 18.05.2012
comment
какую операционную систему вы используете в Amazon EC2? - person nikunj; 18.05.2012
comment
для Linux он находится в /etc/httpd.conf - person nikunj; 18.05.2012
comment
в каталоге ect нет файла с именем httpd.conf. Я должен создать один? - person Shalin Shah; 19.05.2012
comment
нет, это будет в /etc/httpd/httpd.conf, извините, что забыл папку между ними - person nikunj; 19.05.2012
comment
Вы были правы, установив директиву AllowOverride для всех в файле httpd.conf. Теперь мой файл .htaccess работает, поэтому я установил больше модов на сервер. Но файл httpd.conf находится в каталоге /etc/httpd/conf/httpd.conf. Спасибо за вашу помощь! Кроме того, знаете ли вы какие-либо сайты, предлагающие учебные пособия по другим модам .htaccess? - person Shalin Shah; 19.05.2012
comment
Есть много сайтов, объясняющих детали htaccess. Один из них: freewebmasterhelp.com/tutorials/htaccess. - person nikunj; 20.05.2012

Я понял. Я использовал тот же код:

ErrorDocument 404 /404.html

Но вместо того, чтобы поместить его в свой файл .htaccess, который никогда не работал, я поместил тот же код в свой файл httpd.conf, который я нашел в каталоге /etc/httpd/conf/httpd.conf Спасибо за вашу помощь!

person Shalin Shah    schedule 19.05.2012