2017-05-22 12 views
0

.htaccessリダイレクトで 'not'で始まる正規表現に問題があります。.htaccessリダイレクトで 'not'を含む正規表現を使用する

私はwebhive.com.auというワイルドカードSSL証明書を持つWordpressマルチサイト(サブドメインインストール)を持っています。一部のブログはwebhive.com.auサブドメイン上で動作します。他のドメイン名は独自のドメイン名を持っています。

すべてのwebhive.com.auのURLをhttpsに、他のすべてのURLをhttpにリダイレクトしたいとします。

私の.htaccessファイルは含まれています

#Redirect *.webhive.com.au domains to https 
RewriteCond %{HTTPS} off 
RewriteCond %{HTTP_HOST} ^(.*\.)?webhive\.com\.au 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

#Redirect non webhive domains to http 
RewriteCond %{HTTPS} on 
RewriteCond %{HTTP_HOST} !^(.*\.)?webhive\.com\.au 
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

最初のブロックは、httpsにwebhive.com.auドメインを向ける、正常に動作しているように見えます。 2番目のブロックはありません。

ありがとうございます!

+0

HTTPSが使用可能な場合、なぜHTTPにリダイレクトしたいのですか? – CBroe

+0

* .webhive.com.auのワイルドカードSSL証明書があります。私は他のドメインの証明書を持っていません。 – ozwebhive

+0

'not-webhive.com.au'をカバーするSSL証明書がない場合、' https:// not-webhive.com.au'にリクエストをリダイレクトすることはできません。 。セキュアな接続が確立されてからHTTPが有効になります。サーバーは要求されたホスト名に対して有効なSSL証明書を提示できないため、サーバーとの通話は停止します。クライアントは「いいえ、これは安全ではありません。Immaはあなたと話していて、ここから外しました」。 – CBroe

答えて

0

次のURLで試してみると、webhive.com.auのURLはリダイレクトされず、2番目の部分は必要ありません。

RewriteCond %{HTTPS} off 
RewriteCond %{HTTP_HOST} ^(.+\.)?webhive\.com\.au 
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 
+0

誰かが 'https:// not-webhive.com.au'をブラウズしている場合はどうなりますか? OPは代わりにhttpにリダイレクトしたい – hjpotter92

+0

@ abhishek-gurjarの簡素化に感謝しますが、@ hjpotter92は正しいです。それはnonwebhive.comです。私はリダイレクトする必要があります。 – ozwebhive

+0

他のドメインをhttpにリダイレクトする必要があるのは、webhive.com.auから安全にログインさせるためです。非Webhiveドメインをリダイレクトしないと、ログイン後にダッシュボードにアクセスするとセキュリティ証明書エラーが発生します。 – ozwebhive

関連する問題