私は CMS に基づいて Web サイトを運営しています。CMS バックエンド内には、サイトを https 経由で提供するオプションがあります。これにより、config.php ファイルが更新されます。これは、以下の質問に関連する場合と関連しない場合があります。
最近、正規名にリダイレクトする方法についていくつか質問を Stack Overflow に投稿しました。SSL を使用しているため、同じアドレスに 4 つのバリエーションがあります。
選択された正規名は最初のバリアントであり、www ではありません。https.
Stack Overflow の一部のメンバーから、このコードのスニペットを提供していただきました。ただし、これにより「リダイレクト ループ」というエラーが発生しました。このリダイレクト ループを生成したコードは次のとおりです。
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [OR]
RewriteCond %{HTTPS} off
RewriteRule ^.*$ https://example.com/$0 [R,L]
私はこのスニペットをいじりました。私は自分が何をしているのか本当にわからないので、それが機能しているように見えると報告して驚いています. 上記の2行目の末尾を「on」に変更しました。
現在、次の着信 URL は次のようにリダイレクトされます。
www.example.com = https://example.com/ (良い)
example.com => example.com しかし、他のページに移動すると、必要に応じてhttps://example.com/somepageが表示されます(ちょっと良い)
https://www.example.com => https://example.com (良い)
https://example.com => https://example.com (良い)
だから2つの質問:
1) なぜ私のコードは動くの?! それはうまくいくはずですか?私は慎重に楽観的ですが、自分が何をしているのか本当にわからないので懐疑的です.
2) example.com の上の 2 番目のバリアントは、ランディング時にリダイレクトされませんが、サイト内の他の場所へのナビゲーション時にリダイレクトされます。example.com にアクセスした人がhttps://example.comにリダイレクトされるように htaccess ファイル コードを設定する方法はありますか?