URLを http://example.com に設定してMultiSiteをインストールしましたが、今度はすべての要求をHTTPS経由で送信させたいので、URLを https://に変更します。 example.com 。データベースを調べて、すべてのsiteurl
およびhome
の値を https に更新しましたが、サイトはHTTPSにリダイレクトされるのではなく、HTTPを介してロードされます。
私はいくつかのhtaccessルールを設定できることを知っていますが、それは間違いを起こしがちです。通常のインストールでは、WordPressはすべてのリクエストをsiteurl
とhome
設定で定義された正規のURLに自動的にリダイレクトするので、MultiSiteもそうしていると思います。
サイトをSSLに設定するためのプラグインがあります。なぜそれらを使わないのですか?
そしてSSL証明書をインストールしてアクティブにしていますか?
私は同じ問題に遭遇しました:WordPressマルチサイトでは、サイトドメインがHTTPかHTTPSかを定義するオプションや設定はありません。データベース内のすべての出現箇所を置き換えた後でも、サイト訪問者はHTTPSにリダイレクトされることなく、HTTPでサイトにアクセスして移動できます。
次の簡単な解決策が私のために働きました:私はWordPress特有の書き換え規則の直前に、私の.htaccessファイルにこのmod_rewrite
規則を追加しました。
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_Host}%{REQUEST_URI} [L,R=301]
このルールは特定のドメインを定義していないため、WordPressマルチサイトのニーズに最適です。
私は次のスレッドでこのルールを見つけました: https://stackoverflow.com/questions/4398951/force-ssl-https-using-htaccess-and-mod-rewrite