F.Ko-Jiの「一秒後は未来」ではウェブやSEO、API、RSSといった技術的ネタから、ちょっとした豆知識や梅酒、エンタメ系まで様々な情報を不定期にお届けしています。

F.Ko-Jiの「一秒後は未来」 > プログラミング > PEARのHTTP_RequestでURLのリダイレクト先を調べる方法

PEARのHTTP_RequestでURLのリダイレクト先を調べる方法

  • B!
スポンサード リンク

よくフィードのアイテムのURLがリダイレクト用のURLになっていることがあって、そのURLをそのまま使おうとすると不便なことがあります。

そこでPEARのHTTP_Requestを使ってリダイレクト先のURLを調べる方法をメモ。

<?php
require_once('HTTP/Request.php');
$params = array(
    'method' => HTTP_REQUEST_METHOD_HEAD,
    'http' => '1.1',
    'allowRedirects' => true,
    'maxRedirects' => 3,
    'timeout' => 10,
    'readtimeout' => array(10, 0),
);
$http = new HTTP_Request($url, $params);
$http->sendRequest();
sleep(1);
$realUrl = $http->getUrl();

調査対象のURLが必ずしもリダイレクト用のURLでない場合もあるので、メソッドはHEADにしておきます。そうすれば常にHTTPヘッダーのみ取得できて相手サーバの帯域の節約になります。リダイレクトの最大回数やタイムアウトの数値は適当に。

1回のリクエストであればsleepする必要はありませんが、ループさせる場合は同一ホストに連続でリクエストする場合もあるのでsleepしておきましょう。あとはgetUrl()メソッドを使えば最終的なリクエストURL(つまりリダイレクト先のURL)を取得することができます。

Docs For Class HTTP_Request

[2010-01-12] RSS フィードの URL が変わりました。お手数ですが RSS リーダーへの再登録をお願いします。
Subscribe with livedoor Reader Add to Google Subscribe with Fastladder My Yahoo!に追加 Bloglinesで閲読登録 はてなRSSに追加 エキサイトリーダーに登録


コメントを投稿

(承認されるまでコメントは表示されません。)

RSS / プログラミング

English version

前のエントリー: « 松木里菜さんが「ザ・ベストハウス123」に3週連続で出演するよ
次のエントリー: DailyFeed(デイリーフィード)を公開しました »

トラックバック

このエントリーのトラックバックURL:

この一覧は、次のエントリーを参照しています: PEARのHTTP_RequestでURLのリダイレクト先を調べる方法:

» PEAR::HTTP_Requestでリダイレクト先のURLを取得する from kawama.jp
ググったらすぐみつかりました。 PEARのHTTP_RequestでURLのリダ... [詳しくはこちら]

タイトル:

URL:

リンク用HTMLタグ:

Agile Media Network

AMN Partner Blog

広告掲載について

東京ナイロンガールズ
最近の注目記事
持っているガジェット
powered by Gadget Party
最近のつぶやき
えもにゅ

↑ 気持ち記録サービス「えもにゅ」です

このブログの読者になる

F.Ko-Jiの「一秒後は未来」 - RSSフィード

クマでもわかるこのブログの便利な更新チェック方法

DailyFeed

あわせて読みたいブログパーツ

フィードメーター - F.Ko-Jiの「一秒後は未来」

月別アーカイブ


<< March 2010
SuMoTuWeThFrSa
 123456
78910111213
14151617181920
21222324252627
28293031 
人気エントリー
TopHatenar
携帯からのアクセスは
QRコード
http://mob.fkoji.com/