0

ねえ、私はカールで私のAPIを呼び出しているいくつかのサーバーを持っています、すべての呼び出し元はサーバー名(etc. example.com)で私のデータベースに登録されているAPIキーを持っています-しかしどういうわけかそれはホスト(etc.web1など)を返します。 meebox.net)なので、呼び出しを検証できません。現在使用しているのは:

$ip = $_SERVER['REMOTE_ADDR'];
$website = gethostbyaddr($_SERVER['REMOTE_ADDR']);

と:

$ip = $_SERVER['REMOTE_ADDR'];
$website = $_SERVER['REMOTE_NAME'];

ホストではなくサーバーに属するIPとサーバー名を教えてもらうにはどうすればよいですか。

ありがとう!:)

4

1 に答える 1

0

すべてのIPにリバースマッピングがあるわけではありません。また、これらの逆マッピングのうち、元の「ホスト名」にマッピングされない場合があります。たとえば、DNS名は、無制限の数のホスト名を単一のIPにマップできます。ただし、単一のIPは単一のホスト名にのみ「反転」できます。

たとえば、共有サーバーについて考えてみましょう。

www.example.com -> 192.168.1.3
www.example.net -> 192.168.1.3
www.example.org -> 192.168.1.3
etc...
etc...
etc...

しかし

192.168.1.3 -> server-x.hostingcompany.com

リモートホストのホスト名を確実に取得することはできません。これは、IPアドレスだけがあり、IPは特定のホスト名の「一意の」識別子ではないためです。

于 2013-02-27T17:40:36.773 に答える