0

xamppで正常に動作し、次の場所をうまく処理するスクリプトがあります。

しかし、今はサーバーに転送しましたが、機能しません。只今サイト受付中です301 moved permanently 。私のcUrlは次のようになります:

$ch = curl_init();
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($ch, CURLOPT_URL, $dir_url);

エラー報告で試しました:

error_reporting(E_ALL);

しかし、それはエラーを出力しません...

それが何であるかについてのアイデアはありますか?

編集:

//Start Curl Connection
$ch = curl_init();
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($ch, CURLOPT_URL, $dir_url);
//read content of $url
$result = curl_exec ($ch);
echo curl_error ($ch);
curl_close ($ch);
4

2 に答える 2

1

問題は、PHP 設定で open_basedir が設定されていることだと思います。

このブログ投稿の関数を使用しました:

http://slopjong.de/2012/03/31/curl-follow-locations-with-safe_mode-enabled-or-open_basedir-set/

今、その作業!

于 2013-05-03T16:35:13.923 に答える
1

一部のサーバーは、特定のヘッダーの存在を確認します。
おそらくAccept-Language不足しています:

curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Accept-Language: en-us'
));

またはreferer

curl_setopt($ch, CURLOPT_REFERER, $dir_url);
于 2013-05-03T15:47:02.193 に答える