環境:Apache + ssl +ドメインアクセス
私たちのdrupal 7サイトは、ドメインアクセスを使用します複数のサブドメイン私たちのサーバーはSSL対応です
settings.phpで$ base_urlを設定しない場合、すべてのアセットがHTTP経由でロードされ、ユーザーは混合コンテンツエラーを受け取ります
$ base_urlを設定すると、ユーザーは現在のドメイン(bar.blah.comなど)ではなくデフォルトのサブドメイン(foo.blah.comなど)にリダイレクトされます
私の質問は、drupalを強制してHTTPS経由ですべてのアセットをロードする方法を教えてください。
そうすれば#base_urlのコメントを解除できます
$ base_url = 'https://'.$_SERVER [' SERVER_NAME '];でsettings.phpを更新しました。
すべて(サーバーとホストの設定)がok [$conf['https'] = TRUE;
あなたのsettings.php
。
Drupal構成:
混合モードのHTTPSおよびHTTPセッションをサポートする場合は、sites/default/settings.phpを開き、$ conf ['https'] = TRUE;を追加します。これにより、HTTPとHTTPSの両方で同じセッションを使用できますが、HTTPS CookieがHTTPSのみを介して送信される2つのCookieが使用されます。 HTTPS経由でフォームを送信するなど、このモードで役立つことを行うには、securepagesなどの提供されたモジュールを使用する必要があります。 HTTP Cookieは通常のすべての攻撃に対して脆弱ですが、ハイジャックされた安全でないセッションCookieは、HTTPサイトへの認証済みアクセスを取得するためにのみ使用できます。 HTTPSサイトでは無効になります。これが問題であるかどうかは、サイトのニーズとさまざまなモジュール構成によって異なります。たとえば、すべてのフォームがHTTPSを経由するように設定されていて、ビジターがログインしたユーザーと同じ情報を見ることができる場合、これは問題ではありません。
セキュリティをさらに高めるには、$ conf ['https']をデフォルト値(FALSE)のままにし、認証されたすべてのトラフィックをHTTPS経由で送信し、匿名セッションにはHTTPを使用します。ここでも、Secure Loginや443 Sessionなどの貢献したモジュールが役立ちます。 Drupal 7は、HTTPSサイトのsession.cookie_secure PHP構成を自動的に有効にします。これにより、SSLのみの安全なセッションCookieがブラウザに発行されます。最適な可能なセキュリティ、HTTPSのみを使用するようにサイトを設定し、HTTPSサイトへのリダイレクトですべてのHTTPリクエストに応答します。pure-HTTPSサイトでは、$ conf ['https']をデフォルト値(FALSE)のままにすることができます。次に、接続がHTTPS接続にリダイレクトされる前にHTTP接続として開始された場合、HTTPSは中間者攻撃に対して脆弱です。HSTSモジュールを使用するか、WebサーバーでStrict-Transport-Securityヘッダーを設定して、ユーザーがHTTPSなしでサイトにアクセスする。
Secure Pages モジュールも使用できます
モジュールの説明:
必要なページをSSLバージョンのページにリダイレクトする小さなプロセス。
Updateまた、settings.php
行う: $base_url = 'https://'.$_SERVER['SERVER_NAME'];
。
Secure Pages モジュールがこれを行います。
必要なページをSSLバージョンのページにリダイレクトする小さなプロセス。