*
*
*

備忘録 – httpでのアクセスをhttpsにリダイレクトする方法 –

 2018年7月リリースのGoogle Chrome 68からhttps未対応のページにアクセスすると、「保護されていない通信」という警告がアドレスバーに表示されるようになり、企業サイトなどでは対応に追われているようです。
 ただ、GMOクラウドが契約期間中のユーザーにアルフアSSLという無料のSSL証明書を提供するなど、サイトのSSL対応も以前と比べると、費用、技術面で大変導入しやすくなりましたので、企業側の対応もすみやかに行われるように思われます。
 アルファSSLを例に取りますと、ネット上のアカウントマネージャーから申込を行うと、GMOクラウドが証明書のインストールを行い、それ以降https、httpでのアクセスに対応するようになりますので、とても簡単で安心です。

 httpでのアクセスをできないようにしたい、httpsに一本化したいという場合は、ユーザーの側での設定が必要になります。具体的には.htaccessというファイルをサーバーに置き、アクセスをコントロールすることになります。

 GMOクラウドの場合、以下のような.htaccessファイルをサーバーのindex.htmlページと同じ階層に置くことで、httpでのアクセスを強制的にhttpsにリダイレクトすることができます。
  
  <IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteCond %{ENV:HTTPS} !^on$
  RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

  </IfModule>

 強制的なリダイレクトから除外したいディレクトリがある場合は、
 
  <IfModule mod_rewrite.c>
  RewriteEngine off

  </IfModule>

 になります。
 GMOクラウドの場合、最後に改行し、一行空けることが求められています。

 GMOクラウド以外のサーバー会社の場合、たとえばロリポップでも無料の独自SSLのサービスをはじめましたが、httpでのアクセスを強制的にhttpsにリダイレクトする場合は以下のようになります。
 
 <IfModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{HTTPS} off
 RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

 </IfModule>

 特定のディレクトリを除外したい場合は、(この例では、index.htmlがある階層直下のtestというディレクトリ) 

 <fModule mod_rewrite.c>
 RewriteEngine on
 RewriteCond %{HTTPS} !=on [NC]
 RewriteCond %{REQUEST_URI} !/test/(.*)$
 RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

 </IfModule>

 または、ディレクトリtestに、

 <IfModule mod_rewrite.c>
 RewriteEngine off

 </IfModule>

 を置くことでも、同様の効果があります。

 .htaccessによるコントロールでは、様々なことが可能になり、なかなか奥が深いように思います。

最近のニュース・トピックス

カテゴリー

アーカイブ


  • 後援会の代表者
    行政書士・マンション管理士・社会保険労務士
    ファイナンシャル・アドバイザー
    徳田 賢一
  •  政策への賛同者が一体になることで大きなうねりを引き起こし、党派にとらわれない新しい大きな波を市政に伝えることができるようになることを期待します。
     入会は無料です。無党派層の方たちも含め、共有可能な目標にむかって、共に歩みを進めていただければ幸いです。
     入会していただいた方には、不定期になりますが、政策に関連したニュース、トピックス等を発信させていただきます。
  • 後援会への入会申込ページ
  • 入会申込書(PDF)ダウンロード

ページトップへ