Всем привет. Подскажите пожалуйста по реврайтам.
В общем сайт простой на html. Но не хочу, чтобы было видно расширение .html
То есть я хочу чтоб при заходе на URL
domain.ru/contacts
показывалось содержание файла
domain.ru/contacts.html
Вот как это выглядит
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*[^/])$ /$1.html [NC,L]
Но есть проблема:
При запросе несуществующей страницы, например
domain.ru/contacts123 , сервер пытается найти
domain.ru/contacts123.html, но такого файла нет на сервере, поэтому он снова пытается найти .html, в итоге получается циклическая переадресация и сервер отдаёт ошибку 500, вместо положенного 404ответа.
Так как же настроить реврайты таким образом, чтобы были красивые URL вида
domain.ru/contacts (именно без слеша на конце), но при этом при запросе несуществующей страницы, получать код ответа 404?
А то Яндекс-Вебмастеру не нравится, что несуществующие страницы отдают 500 ответ, вместо 404.