0

PHPでホスト名を検証するには?

これは、アプリケーション サーバーを実行していると仮定しIP:192.168.1.77、リクエストにそれ以外のホスト名が含まれている場合は、192.168.1.77それ以上の処理を許可するべきではありません。

どんな助けや提案もいただければ幸いです。

4

3 に答える 3

1

無許可のページを投げます。ホスト名に不一致があるというエラーが表示される

何のために?これは、適切に設定されていれば、Web サーバーが既に処理しているものです。

名前ベースの仮想ホストを使用している場合、セクション内の ServerName は、Host:この仮想ホストと一致するために要求のヘッダーに表示される必要があるホスト名を指定します。

PHP スクリプトでこれを追加で確認する必要はありません。

追加のセキュリティになりますか?それが私のクライアントの要件です

これはまったく無意味であり、セキュリティをまったく追加しません。とはいえ、やっても損はないと思います。

于 2011-09-30T07:13:01.993 に答える
0

ホスト名ではなくアドレスだと思います。

if ($_SERVER['REMOTE_ADDR'] !== '192.168.1.77') die(header("Location: /")); 

ユーザーのホスト名を確認したくない場合は、これを使用してください

if ($_SERVER['REMOTE_HOST'] !== '192.168.1.77') die(header("Location: /")); 

詳細情報http://php.net/manual/en/reserved.variables.server.php

于 2011-09-30T06:40:13.803 に答える
0

これは、Web サーバーの構成内からサーバー側で行う必要があると思います。(.htaccess)

order deny, allow
deny from all
allow from 192.168.1.77
于 2011-09-30T06:40:19.250 に答える