2014-01-12 5 views
2

как я могу включить https на все страницы, но не на главную страницу через .htaccess, кто-нибудь может помочь мне с rewritecond, пожалуйста..htaccess RewriteCond исключить главную страницу

RewriteCond %{HTTP_HOST} ^mydomain\.com$ [OR] 
    RewriteCond %{HTTPS} !=on 
    RewriteRule ^(.*)$ https://www.mydomain.com/$1 [R=302,L] 


    # Rewrite URLs of the form 'x' to the form 'index.php?q=x'. 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_URI} !=/favicon.ico 
    RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] 

У меня уже есть это, и моя цель состоит в том, чтобы ИСКЛЮЧИТЬ FrontPage для HTTPS, только внутренний/подстраниц должны иметь HTTPS.

Пожалуйста, помогите мне изменить мой существующий. Спасибо.

ответ

0

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

RewriteCond %{HTTP_HOST} ^mydomain\.com$ [OR] 
RewriteCond %{HTTPS} off 
RewriteRule ^(.+)$ https://www.mydomain.com/$1 [R=301,L,NE] 

RewriteCond %{HTTPS} on 
RewriteRule ^$ http://www.mydomain.com/ [R=301,L] 

# Rewrite URLs of the form 'x' to the form 'index.php?q=x'. 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_URI} !=/favicon.ico 
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] 

.+ вместо .* убеждается HTTP обеспечивается для других страниц подразделов, за исключением первых страниц.

+0

спасибо, как это возможно, если кто-то получит доступ к https://mydomain.com или https://www.mydomain.com, он изменит его на http: //, если кто-то получит доступ к главной странице с помощью https: // it заставит http: // только главную страницу, остальные должны сохранить свой https: // – axscode

+0

да, конечно, это можно сделать. Добавлено это правило в моем обновленном ответе. – anubhava

+0

Большое спасибо, прекрасно работает – axscode

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