2015-12-16 2 views
3

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

<IfModule mod_rewrite.c> 
RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.html -f 
RewriteRule ^(.*)$ $1.html 
</IfModule> 

Я использовал этот код, но он не работа

+0

я хотел ур имя :) – Bsienn

ответ

1

использование как:

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

нет, это не работает для меня –

+0

@Starkeen - ОП подтвердил, что не работает, что само по себе не является великая аргументация. Однако сам ответ не смог объяснить сам, неясно, что делает любая из лишних строк, что может быть опасно для реализации таких изменений, не зная, что они собираются делать с системой OP. –

0

Вы можете использовать:

# remove html 
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.html [NC] 
RewriteRule^%1 [R=301,L] 

# add html but only if file exist with html and not without 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME}\.html -f 
RewriteRule^%{REQUEST_URI}.html [L] 
0

вы можете использовать это, чтобы скрыть .html

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME}.html -f 
RewriteRule !.*\.html$ %{REQUEST_FILENAME}.html [L]