2016-11-19 4 views
0

私は新しいサイトを持っています、最初はhttp://そしてサイトをhttp://wwwにリダイレクトしました。 SSL私はウェブサイトhttp://www.example.comhttps://www.example.comという2つのバージョンを持っています。 私は.htaccessの中でいくつかのコマンドを試してみましたが、誰かがこれで私を助けてくださいすることができますまだ私は以下、2つのバージョンを持っているが、私は私の.htaccessに使用していたコードです:すべてのトラフィックをhttps:// wwwにリダイレクトします。現在私は2つのバージョンhttp:// wwwとhttps:// wwwを持っています

RewriteEngine On 
RewriteCond %{HTTPS} off 
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 
RewriteCond %{HTTP_HOST} !^www\. 
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

答えて

1

まずWWWとhttpsの後:

RewriteEngine On 
RewriteCond %{HTTP_HOST} !^www\. [NC] 
RewriteRule^https://www.%{HTTP_HOST}%{REQUEST_URI} [NE,L,R=301] 
RewriteCond %{HTTPS} off 
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [NE,L,R=301] 
+0

テストする前にキャッシュをクリアするか、別のブラウザで試してください – Croises

+0

ありがとうございます。私はブラウザでキャッシュをクリアし、ワニスを塗り替えてApacheを再起動しましたが、まだhttp:// wwwに行きます。 –

+0

このhtaccessに問題はありません。サーバー設定で確かに – Croises

0

これを試してください。

RewriteEngine On 
RewriteCond %{HTTPS} off 
# First rewrite to HTTPS: 
# Don't put www. here. If it is already there it will be included, if not 
# the subsequent rule will catch it. 
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 
# Now, rewrite any request to the wrong domain to use www. 
RewriteCond %{HTTP_HOST} !^www\. 
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 
+0

いいえ、wwwを使わずにhttpsにリダイレクトし、www = 2 x 301のリダイレクトを使用して再度リダイレクトするためです。最初にwwwなしでhttps // wwwにリダイレクトすると、後でhttpsにリダイレクトする必要はありません。そしてそれは質問で同じです... – Croises

+0

Ooops、私はそれが質問と同じであることに気づいた。私の悪い:\ – jsalatas

関連する問題