Webエンジニア 新人日記

Webエンジニアになりました。元々はCOBOLやらBASICやらでプログラムしてました。C言語やVisualBasicは趣味でやっていましたが、久々に現場復帰ということです。資格はエンベデッドスペシャリスト、DBスペシャリスト、ネットワークスペシャリスト、セキュリティスペシャリスト、システムアーキテクト、プロジェクトマネージャ他を所有

【PHP】httpsにリダイレクトする

個人情報等、機密情報を扱うようなページの場合に無理やりにでもhttps通信を強制させたい。

if (empty($_SERVER['HTTPS'])) {
	//SSLでなかったらSSLのページにリダイレクトする
    header("Location: https://{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}");
    exit;
}

SSLの場合は$_SERVER['HTTPS']に"on"等が入っている。
SSLでない場合は何も入っていない。


{$_SERVER['HTTP_HOST']}にはドメインに相当する値が入っており、
$_SERVER['REQUEST_URI']にはドメイン以下のパスやスクリプトファイル名がある。
つまり、{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}でサーバからのフルパス。
で、通信プロトコルhttpsを頭につけたURIにリダイレクトすればOK。

ちなみに、これはxamppでも使える。