ホームページ  >  記事  >  バックエンド開発  >  PHPで外部ネットワークマッピングアクセスを通じて内部ネットワークのIPアドレスを取得する方法はありますか?

PHPで外部ネットワークマッピングアクセスを通じて内部ネットワークのIPアドレスを取得する方法はありますか?

WBOY
WBOYオリジナル
2016-06-23 13:50:341193ブラウズ

状況は次のようになります。サーバーのイントラネット アドレスは 192.168.28.154 で、php コードと mysql データベースの両方がそこにあります。

次に、php はデータベースに接続する必要があるため、php コードには次のように記述されます:
$dbhost="192.168.28.154";
...
mysql_connect("localhost",
...

、「php コードと mysql データベースは他のサーバーにデプロイされますが、その時点で php コードが変更されないことを願っています。それでは、コードが現在デプロイされているサーバーの IP アドレスを取得するにはどうすればよいですか?
注: ここに外部ネットワーク マッピングがあります: 58.240.33.174:20280、他のユーザーはこの IP を通じてアクセスできます


ディスカッション (解決策) に返信

イントラネット サーバーを展開したい場合は、変更する必要がありますが、データベースと同じ LAN ではない場合、サーバー内またはサーバー上からイントラネットにアクセスできない場合は、データベースを外部ネットワークに移行する必要があります。そうしないと、プログラムでデータベースを変更する必要があります。

サーバーをイントラネットに展開する場合は、変更する必要はありませんが、データベースが同じ LAN 内にない場合、またはサーバーがイントラネットにアクセスできない場合は、データベースを外部ネットワークに接続しない場合は、プログラムでデータベース リンクを変更する必要があります。 ------------------ -------------------------------- ------------------ -------------------------------- ------------

こんにちは。たとえば、元の 192.168.28.154 ではなく 192.168.28.151 にイントラネット サーバーを導入したとします。
$ を変更する必要がありますか? dbhost="192.168.28.154"; これはどういう意味ですか?
php と mysql は両方とも同じマシン上にあります
mysql に接続するときは IP の代わりに locathost を使用してください

php と mysql は両方とも同じマシン上にあります

その場合は locathost を使用してくださいmysql に接続するときに IP の代わりに

----- ----------------------------------- --------------- -----------------------------


$conn = mysql_connect ("localhost",

これがデータベースに接続するためであることはわかっています,
では、次のコードは何に役立つのでしょうか?
現在のサーバー アドレスが $dbhost の直後に割り当てられているのはなぜですか?
$dbhost="192.168.28.154";
$dbuser="authpuppy";
$tbname="t_node_ad";
これがプロジェクトの初期設定です。使わないとダメだよ
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。