2015-02-26 2 views
0

Можно ли комбинировать правила перезаписи в файле htaccess?объединение htacess для правил многократного перезаписи

Мой текущий изменяет мои ссылки, так что если кто-то входит/носитель, он переписывает, чтобы добавить media.html.

Я хотел бы добавить к этому, и моя домашняя страница домашней страницы перенаправлена ​​на www.

Как добавить (где example.com является mywebsitename.com)

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^example.com [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301,NC] 

в

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.html -f 
RewriteRule ^(.*)$ $1.html 
+0

Просто наличие в указанном порядке должно работать. – anubhava

+0

в том же файле? –

+0

@anubhava так как этот 'код' RewriteEngine на RewriteCond% {REQUEST_FILENAME}! -d RewriteCond% {REQUEST_FILENAME} \. HTML -f RewriteRule^(. *) $ $ 1.htmlRewriteEngine на RewriteCond% {HTTP_HOST}^example.com [NC] RewriteRule^(. *) $ http://www.example.com/$1 [L, R = 301, NC] –

ответ

0

Просто, чтобы очистить его, вам не нужно переписывания двигатель на два раза. Вам просто нужно добавить правила в том порядке, в котором вы указали их для начала.

RewriteEngine on 
#redirect nonwww to www 
RewriteCond %{HTTP_HOST} ^example.com [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301,NC] 
#remove html extension 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.html -f 
RewriteRule ^(.*)$ $1.html [L] 

Возможно, это поможет смутить. Ваш файл htaccess может содержать столько правил, сколько вам нужно. Вам просто нужно не создавать конфликтов.

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