@JonyRico

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

Как убрать .html в URL?
через .htaccess
для всех страниц
Чтобы вместо www.gral.ru/sobytij.html Стало www.gral.ru/sobytij
  • Вопрос задан
  • 6366 просмотров
Решения вопроса 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, нужно также это учитывать.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы