Как настроить перенаправление всех страниц сайта с расширением .html на другие страницы?

Как настроить редирект всех страниц сайта с расширением ".html" на страницы без этого расширения используя файл .htaccess на хостинге Beget? Внутренние страницы успешно переходят без расширения, но появляется ошибка. Существует ли какое-то иное решение для данной проблемы?
  • 25 февраля 2024 г. 17:58
Ответы на вопрос 2
Для настройки редиректа всех страниц с расширением ".html" на страницы без этого расширения через файл .htaccess на хостинге Beget, вам нужно добавить следующий код в файл .htaccess:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.html [NC,L]

Этот код будет перенаправлять все запросы к страницам без расширения .html на страницы с расширением .html. 

Однако, если вы получаете ошибку после настройки данного редиректа, возможно проблема кроется в других правилах в вашем файле .htaccess. Пожалуйста, убедитесь, что добавление данного правила не конфликтует с другими правилами, которые уже прописаны в файле .htaccess.

Если проблема не решается, то рекомендуется обратиться к технической поддержке вашего хостинг провайдера для помощи в настройке редиректа страниц с расширением ".html".

Есть также альтернативные способы решения данной проблемы, например, использование плагинов для управления редиректами в CMS (например, для WordPress), или ручное редактирование всех ссылок на сайте для удаления расширения .html.
RewriteEngine on
RewriteBase /
RewriteCond %{http://ivsmskv6.beget.tech} !(\.[^./]+)$
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !^.*\.html$
RewriteRule ^(.*)$ $1.html
Похожие вопросы