URLからXML出力を取得するためにPHPのcURLを使用しています。ここに私のコードは次のようになります。cURLでXML出力を取得できません
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.mydomain.com?querystring');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, "username:password");
$store = curl_exec($ch);
echo $store;
curl_close($ch);
しかし、代わりに、それはちょうど私の404エラーページを表示XMLを返します。 WebブラウザにURL http://www.mydomain.com?querystringと入力すると、ブラウザにXMLが表示されます。
私はここで何が欠けていますか? :(
感謝。
PHPスクリプトは実行中ですか? nあなたのブラウザと同じマシンですか? 1つの場所でURLが動作するという理由だけで、別のマシンでどれくらいうまく動作するかについては何も意味しません。 –
@Blueboye - @Mlue Bのコメントに加えて、Webサイトの所有者の中には、リクエストがWebブラウザであり、ボット(またはcURL)でないことを確認するための特定のものの存在をチェックするものがあります。 'curl_setopt($ ch、CURLOPT_USERAGENT、 'Mozilla/5.0(MSIE 9.0; Windows NT 6.1; Trident/5.0)');'を追加し、問題が修正されているかどうか確認してください。それはユーザーエージェント文字列を送信します。サイトでは、クッキーなどの存在を確認することもできます。 –
localhostでPHPを実行していますが、ULRは外部サーバーです。 – Blueboye