[PHP-users 3040] Re: バーチャルホストへのアクセスについて

php-users@php.gr.jp php-users@php.gr.jp
Tue, 23 Oct 2001 11:55:10 +0900


SUMiです。

> サーバ上のPHPから バーチャルホストで運営しているホストに対してHTTP POSTアクセスを行い
> その結果(HTMLページ)をPHPを参照したブラウザに表示させるということをしたいと考えておりますが,
> どうにも HTTP1.1 対応のモジュールが見つかりません。
> 
> 以下のようなよさげなものも見つけて試してみたのですが、どうにも動作しません。
> # サーバ側にはブラウザ,Javaプログラムからはアクセス可能です。
> 
> HTTP Client class
> http://lwest.free.fr/doc/php/lib/Net/HTTP/?lang=en
> 
> 情報をお持ちの方がおりましたら、ご教授ください。

モジュールに関しての情報は持ち合わせていないのですが、fsockopenで直接ソ
ケットを開き、ヘッダを吐く部分にHOSTヘッダを加えればよいのではないでしょ
うか?

$fp = fsockopen( SERVER_NAME, SERVER_PORT );
if( ! $fp )
{
    //ERROR
}
$h_str = 'POST '.POST_URI.' HTTP/1.0'."\r\n";
$h_str .= 'HOST: '.SERVER_NAME."\r\n";
$h_str .= "CONTENT-TYPE: application/x-www-form-urlencoded\r\n";
$h_str .= "CONTENT-LENGTH: ".strlen($post_str)."\r\n\r\n";
fputs( $fp, $h_str );
fputs( $fp, $post_str );