2016-12-05 5 views
0

Я пытаюсь удалить расширение из URL.Удалить расширение из URL (.htaccess)

Я внедрил код в файле .htaccess, а затем удалил все расширения с страниц сайта. Таким образом, я мог бы достичь своей цели в некоторой степени; находясь на месте, если я нажимаю любой URL-адрес, он переводит меня на соответствующую страницу без отображения расширения.

Но, если я получаю доступ к URL-адресу вручную, введя расширение в URL-адресе, он снова отображает страницу, но я этого не хочу.

Например, если я вручную напечатаю website.com/page.html в URL-адресе, он должен автоматически перенаправить меня на website.com/page.

Что следует написать в .htaccess?

+4

Можете ли вы опубликовать правило перезаписи, которое вы написали до сих пор? – wanjarisushil

+0

Я немного починил грамматику и форматирование вопроса. Вы можете улучшить его, добавив свое текущее правило, как это было предложено в первом комментарии. –

ответ

0

Спасибо! Это то, что я обеспечен.

#example.com/page will display the contents of example.com/page.html 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}.html -f 
RewriteRule ^(.+)$ $1.html [L,QSA] 

#301 from example.com/page.html to example.com/page 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*\.html\ HTTP/ 
RewriteRule ^(.*)\.html$ /$1 [R=301,L] 

Работает полностью нормально.

Смежные вопросы