まず、私はカールハンドルを初期化します。以前に設定されたリクエストヘッダーrefererフィールドをカールハンドルから削除するにはどうすればよいですか?
$ch = curl_init();
次の私は、URLやリファラヘッダを設定します。
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_REFERER,$referer);
そして最後の文を実行します。
curl_exec($ch);
今、私はせずに別のURLを使用することができますハンドルを閉じて再開する:
curl_setopt($ch,CURLOPT_URL,$another_url);
私はサーバを送信するリファラヘッダを無効にする方法を知らないので、ここで頭痛が始まります。もちろん、false
とnull
をCURLOPT_REFERERに入れようとしましたが、refererフィールドが空になりますは依然としてサーバーに送信されますが、値はありません(HTTP仕様でも正しいですか?)。
カールハンドルを閉じたり、元に戻したりせずにヘッダを完全に削除するオプションはありますか?
カールは接続を開いたままにしておきたいのですが、同じホストからダウンロードしている間にハンドルを絶えず閉じると、時間がかかることがあります。
ヘッダー全体を削除する必要がありますか?あなたはあなたが要求しているURLと同じになるように設定するだけでなく、前の要求のURLを設定するだけではありませんか? –
はい、私はしたいと思います。リファラの中に何があるべきか非常に厳しいサーバーが存在する可能性があります。今まで私は何も遭遇していないが、私は事前に尋ねる。そのような振る舞いがHTTP仕様に関して正しいのかという疑問は本当ですか? – rsk82
バグが埋まっている場合は、私にリンクを表示できますか? – rsk82