簡単な簡単な質問名前の代わりにfsockopen()関数でホストのIPを渡すことはできますか?2つのサーバー間の接続を設定する必要があり、今は同じコンピューターで作業する必要があります。これまでfsockopenを使用したことはありません。簡単な例をいただければ幸いです。よろしくお願いします=)
3 に答える
2つのサーバー間でHTTPを実行するために使用する代わりに、必要なものがすでにあるため、fsockopen()
使用する方が簡単だと思います。curl
技術的には、fsockopen()
HTTP通信を行うために使用する場合は、別のHTTPクライアントを開発することになります。curlはHTTPクライアントであるため、車輪の再発明の必要性がわかりません^^
編集:
だからあなたは本当に使用する必要fsockopen()
がありますか?
Ok。これがSimonWillisonsPHPHTTPクライアントへのリンクです。おそらくそれは古くて時代遅れであり、HTTPクライアント機能のごく一部しかカバーしていませんが、ソースが付属してfsockopen
おり、HTTPリクエストの実行方法を理解するのに役立つはずです。
例えば
fsockopen(gethostbyaddr("127.0.0.1"), ...
fsockopen関数を使用しても安全ではありません。この機能は、セキュリティ上の理由からホスティングプロバイダーによって無効にされることがよくあります。また、ホスティングプロバイダーは、ファイアウォールによって他のマシンへの外部接続から保護しています。
phpを使用して、あるサーバーから別のサーバーで何かを取得したい場合は、CURLを使用してください。使用するには、curlphp拡張機能をインストールする必要があります。
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://yourserver.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);
$r = curl_exec($ch);
curl_close($ch);
?>
また、Zend Frameworkを使用している場合は、Zend_Http_Adapter_Curlクラスに注目することができます。