@JonyRico

Как убрать .html в URL?

Как убрать .html в URL?
через .htaccess
для всех страниц
Чтобы вместо www.gral.ru/sobytij.html Стало www.gral.ru/sobytij
  • Вопрос задан
  • 6374 просмотра
Решения вопроса 1
swipeshot
@swipeshot
Учусь на ошибках.
RewriteEngine on

RewriteBase /

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^.]+)\.html\ HTTP

RewriteRule ^([^.]+)\.html$ http://www.gral.ru/$1 [R=301,L]

RewriteCond %{REQUEST_URI} !(\.[^./]+)$

RewriteCond %{REQUEST_fileNAME} !-d

RewriteCond %{REQUEST_fileNAME} !-f

RewriteRule (.*) /$1.html [L]


Копипасьте сразу в htaccess
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@last_resort23
Здравствуйте. Если у Вас используеться Apache, то в файле .htaccess пропишите следующее:

RewriteEngine On
RewriteCond %{REQUEST_URI} ! \.html$
RewriteCond %{REQUEST_URI} ! /$
RewriteRule ^(.*)$ $1.html
Это приведет URL к виду без .html в конце.
Если используется nginx:
То в конфигурационном файле, в блоке location /
укажите следующее:
rewrite ^(/.*)\.html(\?.*)?$ $1$2 permanent;
try_files $uri/index.html $uri.html $uri/ $uri =404;

Так же на настройки правил реврайта может влиять ваша CMS, нужно также это учитывать.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы