• ベストアンサー

HTTP_REFERERが使えない

PHP4.2.1(RedHAT 7.2上)です。 $HTTP_REFERERや$HTTP_USER_AGENT等の環境変数が取得できないのですが、php.iniファイルで設定が必要でしょうか? 環境変数の取得方法が変わったのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#4147
noname#4147
回答No.1

PHP 4.2.0以降、外部変数の扱いに仕様変更がありました。 php.iniでregister_globalsをonにすれば、従来どおり使えますが、これは危険があるため、使わないことを奨励されています。 将来サポート外になる可能性もあります。 その代わり、PHP4.1.0から $HTTP_REFERERは、 $_SERVER["HTTP_REFERER"] $HTTP_USER_AGENTは、 $_SERVER["HTTP_USER_AGENT"] で受け取れます。 POST、GET、COOKIE等による変数も、情報の取得元を限定できるような変数名に変わっているので、気をつけてください。 詳しくは、参考URLも読んでください。

参考URL:
http://www.php.gr.jp/history/release_4_2_0.html
nak205
質問者

お礼

早速ありがとうございます。

その他の回答 (1)

noname#4147
noname#4147
回答No.2

具体的にどのように受ければいいかは、参考URLを見てみてください。 スーパーグローバルの変数の部分です。 上半分はすでに使えないので、気をつけてください。 環境変数は $_SERVER フォームからのパラメータは $_GET、$_POST などになっています。 あと、PHP4.2.1にはセキュリティホールがあるので、4.2.2を使うことをお勧めします。

参考URL:
http://www.php.net/manual/ja/language.variables.predefined.php
nak205
質問者

お礼

早速ありがとうございます。 >あと、PHP4.2.1にはセキュリティホールがあるので、4.2.2を使うことをお勧めします。 ま、またですか!?ありがとうございます。

関連するQ&A

専門家に質問してみよう