HTTPS

2017-11-09 1 views
0

背景HTTPS

私はこのようなhttpsを使用するように強制されたウェブサイト、

RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L] 

私は1つのURLを持っているを持っています機能するにはhttpにする必要があります。それはこのようになり、ルールを考慮し

www.example.com/mypage.html 

または

example.com/mypage.html 

質問

は、任意の形式で、どのように私は1つのURLを強制することができ、httpsにサイト全体を強制的に存在しますwwwまたはwwwのない場合は、強制的に使用するhttp

答えて

1

これを達成するには、書き換え条件(RewriteCond)を含める必要があります。だから、使用することができます。

RewriteCond %{REQUEST_URI} !^/mypage 

これは基本的にURLが/mypageが含まれている場合、それは、がHTTPSにリダイレクトし、HTTPとして滞在しないだろうと言っています。 URLに/mypageが含まれていない場合は、すべてをHTTPsにリダイレクトします。

RewriteCond %{SERVER_PORT} 80 
RewriteCond %{REQUEST_URI} !^/mypage 
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L] 

RewriteCond %{SERVER_PORT} 80はあなたのために働いている場合は、それを使用し続けていますが、RewriteCond %{HTTPS} !=onに置き換えることができます。

これをテストする前に、キャッシュをクリアすることを確認してください。