以下のコード実行すると
Bad Request
Your browser sent a request that this server could not understand.
client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23):/hoge/
のメッセージが表示されます。
HTTP/1.1ではHostフィールドが必須とのことなので
$header = array("Host: www.hogehoge.jp");
で、入力しているつもりなのですが
これでは駄目なのでしょうか。
<?php
$header = array("Host: www.hogehoge.jp");
$ch = curl_init("http://www.hogehoge.jp/hoge/");
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_exec($ch);
curl_close($ch);
?>
# 直接の答えではありません。ごめんなさい。
curl_setopt で CURLOPT_HEADER や CURLOPT_VERBOSE を設定して、実際に送信されているヘッダの内容を確認してみてはいかがでしょうか。実際に送信しているヘッダが確認できれば、次にそれを直接 telnet で実行してみるなどすればヒントが得られるかもしれません。
# 直接の答えではありません。ごめんなさい。
curl_setopt で CURLOPT_HEADER や CURLOPT_VERBOSE を設定して、実際に送信されているヘッダの内容を確認してみてはいかがでしょうか。実際に送信しているヘッダが確認できれば、次にそれを直接 telnet で実行してみるなどすればヒントが得られるかもしれません。
コメント(0件)