2016-08-07 15 views
2

私はウェブサイトhttps://www.example.comとサブドメインhttps://sub.example.comを持っています。サブドメインのhttpsがメインドメインにリダイレクトされます。サブドメインはhttpsなしで動作します

私の問題は、https://sub.example.comにアクセスしようとするたびにhttps://www.example.comにリダイレクトされるということです。しかし、http://sub.example.comにアクセスしたとき、私はリダイレクトされません。

https://で私のサブドメインにアクセスできるようにするワイルドカードSSL証明書があります。両方のサイトはWordPressを実行し、Bluehostでホストされています。私は多くのソリューションを試してみただけでなく、Bluehostのカスタマーサポートに2度も役に立たなかった。 SSLを有効にして、メインドメインとサブドメインの両方にアクセスできるようにしたいと考えています。私はまた、新鮮なワードプレスは、両方のメインのインストールしようとしているhtaccess redirect domain to https, subdomain to http and www to non-www

# for main domain 
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC] 
RewriteCond %{HTTPS} off [OR] 
RewriteCond %{HTTP_HOST} ^www\. [NC] 
RewriteRule^https://example.com%{REQUEST_URI} [R=301,L,NE] 

# for sub domain 
RewriteCond %{HTTP_HOST} ^(www\.)?sub\.example\.com$ [NC] 
RewriteCond %{HTTPS} on [OR] 
RewriteCond %{HTTP_HOST} ^www\. [NC] 
RewriteRule^http://sub.example.com%{REQUEST_URI} [R=301,L,NE] 

https://my.bluehost.com/hosting/help/766

# Custom subdomain .htaccess SSL + WordPress 
RewriteEngine On 
RewriteCond %{HTTP_HOST} ^subdomain.maindomain.com$ 
RewriteCond %{REQUEST_URI} !^/subfolder/ 
RewriteRule ^(.*)$ /subfolder/$1 
RewriteCond %{HTTP_HOST} ^subdomain.maindomain.com$ 
RewriteRule ^(/)?$ subfolder/index.php [L] 
# End custom subdomain .htaccess 

# Custom maindomain .htaccess WordPress 
RewriteEngine On 
RewriteBase/
RewriteCond %{HTTP_HOST} ^(www.)?maindomain.com$ 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{HTTP_HOST} ^(www.)?maindomain.com$ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
# End custom maindomain .htaccess 

http://www.wpbeginner.com/wp-tutorials/how-to-add-ssl-and-https-in-wordpress/

私はここにある以下のソリューションに従って.htaccessファイルを編集していますドメインとサブドメインには運がありません。私は他に何をしようとしているのか分からない。どんな助けや提案も大歓迎です。しようとする

+0

WordPressディレクティブの注文事項を含め、 '.htaccess'ファイル全体を投稿する必要があります。なぜあなたは一見Bluehostのヘルプ文書からコードサンプルを引用したのですか?あなたが「https://www.example」にリダイレクトしたものは何もありません。com' ?!これはあなたのWordPressのインストールで設定エラーを示唆しています。 – MrWhite

答えて

1

いくつかのこと:

  1. まず、あなたが変更を作っているとき、Webconfs HTTP Header Checkerのようなツールを使用します。こうすることで、Webブラウザにリダイレクトがキャッシュされ、リダイレクトを修正する変更を行った場合、ヘッダーチェッカーがだまされることはありません。一方、ウェブブラウザは、キャッシュをクリアするまで、物事が修正されてもリダイレクトを続けます。また、Chromeのシークレットウィンドウを試すこともできます。

  2. 1つの.htaccessファイルだけを使用する代わりに、サイトごとに1つを使用します。 example.comがプライマリドメインであると仮定すると、ルートフォルダ内の "root" WPサイトのルールを設定することができます。そして、別のWPインストールが存在するフォルダ内の "サブドメイン" WPサイトのルールを設定します -/subdomain .com/.htaccess。

  3. 「ルート」WPサイトのURLとホームURLがともにhttpsバージョンに設定されていることを確認してください。あなたはいくつかの場所でこれを行うことができます: "root" WPサイトのwp-adminで、設定>一般に行きます。 「ワードプレスアドレス(URL)」と「サイトアドレス(URL)」はどちらもhttpsが必要です。 httpに設定されている場合、[保存]をクリックするとログアウトされます。代わりに、phpMyAdminでこれを行うことができます - wp_optionsテーブルで 'siteurl'と 'home'オプションを探して、httpではなくhttpsであることを確認します。

  4. httpで実行されているサイトが安全でないときにWPがインストールされたように聞こえます。場合によっては、サイトURLとホームURLを更新するだけではありません。 WP Migrate DBを使用して検索と置換を行い、http URLのすべてのインスタンスをhttps URLに変換してみてください。

  5. 「root」サイトがまだ非セキュアバージョンにリダイレクトされている場合は、WordPress Force HTTPSなどのプラグインをインストールできます。

+0

他人のための注意:私はこの問題に直面していないので、答えを検証せず、新しいユーザーのコメント(回答)に応じて賞金を提供しました。しかし、これは高品質の回答であり、より良い選択肢が見つかると、より良い回答を提供することができます。 – sage

関連する問題