Nacky - Snowland.net

Nacky(Issei Ishii)がDJ/Composerのようなふりして書き散らすblogサイト

Info

Nacky - Snowland.net - blogを移転しました

2010-02-12

PHPのサーバ環境変数とEZwebの挙動

PHPで$_SERVERを参照するとサーバ環境変数が取得できます.

このうち $_SERVER['HTTP_HOST'] と $_SERVER['SERVER_NAME'] は似て非なるものです.
HTTP_HOSTは,クライアントがリクエストヘッダ中でサーバに送ってくる Host ヘッダ.
SERVER_NAMEは,サーバ側が持ってる名前(VirtualHostのときはその名前).

大体の場合両者は一致するのですが,EZweb端末でSSL上のリクエストを行うと,HTTP_HOSTの末尾にポート番号が付きます.
https://example.com/ とすると
$_SERVER['HTTP_HOST']は example.com:443
$_SERVER['SERVER_NAME']は example.com
なんですな.

いずれにしろHTTP_HOSTのほうはブラウザが任意で送ってくるものなのでアテにしちゃいけません.
逆に443がほしければ $_SERVER['SERVER_PORT'] で取得できます.

PHP: $_SERVER - Manual

posted at 17:15:22 on 2010-02-12 by nacky - Category: Com/Tech ( PHP )

ソニーストア

TrackBack

このエントリにトラックバックはありません
トラックバックURL

Comments

No comments yet

Add Comments