« 『木場公園』を眺めてみる。 | トップページ | 『神戸カップ』を頂きました♪ »

2012年7月26日 (木)

『https』と『http』の判別は、どうすればできる?

現在『http』から『https』に切り替えている最中。

そのため、どちらからもアクセスできるのが望ましい。

でも、『https』の中から『http』でアクセスをすると
『安全じゃないコンテンツにアクセスしている!』と
『google chrome』では、ワーニングが表示される。

『Firefox』は、出さないのに…。(汗)

とは言え、こう言ったワーニングを
潰しておくに越したことは無い。

映像などのアドレス指定に『http』で
ダイレクトに指定している。

これを
『http』の時には、『http』で
『https』の時には、『https』で
アクセスすれば良い訳で…

簡単に出来るかと思ったら…
意外に判定する物が無い!?

設定すればデフォルトで登録されると思っていたら
意外と登録されなくて、涙が出た…。(T_T)

斜め前の方と協力して対策を調べた…。

一つは、ポートの明示的指定。
もう一つは、文字列の登録。

> vi /etc/httpd/conf.d/virtualhost-myserver.jp.conf
>><VirtualHost *:80
>>    ServerName myserver.jp:80 ← ポートを追加する
>>    DocumentRoot /home/myserver.jp/web
>>    ErrorLog /home/myserver.jp/logs/error_log
>>    CustomLog /home/myserver.jp/logs/access_log combined env=!no_log
>></VirtualHost>
>><VirtualHost *:443>
>>    ServerName myserver.jp:443 ← ポートを追加する
>>    DocumentRoot /home/myserver.jp/web
>>    ErrorLog /home/myserver.jp/logs/error_log
>>    CustomLog /home/myserver.jp/logs/access_log combined env=!no_log
>>    SetEnv HTTPS ON ← ※2
>></VirtualHost>
> /etc/rc.d/init.d/httpd restart

これで「[SERVER_PORT] => 80」から
「[SERVER_PORT] => 80」と「[SERVER_PORT] => 443」に
キチンと反映されるようになった。

また、「※2」で「HTTPS」でチェックできるようになった。

サンプル「test.php」。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>test</title>
</head>
<body>
[HTTPS]
<?php
if( !empty($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == ON) ) {
    print "ssl\n";
} else {
    print "no ssl\n";
}
?>
<BR>
[SERVER_PORT]
<?php
if( !empty($_SERVER['SERVER_PORT']) && ($_SERVER['SERVER_PORT'] == 443) ) {
    print "ssl\n";
} else {
    print "no ssl\n";
}
?>
<BR>
</body>
</html>

ちゃんと認識しましたよ!

有難う斜めの人。

お陰で、完成だぁ~♪

|

« 『木場公園』を眺めてみる。 | トップページ | 『神戸カップ』を頂きました♪ »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/108365/55272609

この記事へのトラックバック一覧です: 『https』と『http』の判別は、どうすればできる?:

« 『木場公園』を眺めてみる。 | トップページ | 『神戸カップ』を頂きました♪ »