2015-09-25 2 views
0

У меня есть статический сайт. Я хочу переписать любой url без расширения на url с расширением .html.Apache Rewrite правило для URL без расширения

Например:

Если ссылка «example.com/test1», пусть сервер найти «example.com/test1.html», но в адресной строке сохранить «example.com/test1» показывая там.

Мне нужно, чтобы это правило перезаписи применялось к любому URL без (. * Или /) в конце.

Я новичок в Apache. Любая помощь будет высоко оценена.

ответ

0

Если это только расширение HTML, а затем что-то вроде:

RewriteEngine On 

RewriteCond %{THE_REQUEST} \ /+([^\ \?]+)\.html 
RewriteRule^/%1 [L,R] 

RewriteCond %{DOCUMENT_ROOT}/$1.html -f 
RewriteRule ^(.+)$ /$1.html [L] 
1

Вы можете включить опцию MultiViews и mod_negotiation сделает остальную часть работы. Но это может привести к некоторым problems.

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