![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
file_get_contents(url) で、サイトのHTMLを取り込むことは問題なくでき、そのサイトにリダイレクト(Locationヘッダ?)が設定されていると、ちゃんとリダイレクト先のHTMLを取得することができるのですが、リダイレクトされたことや、リダイレクト先URLは、どのようにすれば知ることができるでしょうか。
得られたHTMLはリダイレクト先の内容なのに、私が作ったプログラムが把握しているURLはリダイレクト元のアドレスなので、不整合が起きてしまい困っています。
ポインタで結構ですので教えていただけると幸いです。
No.1ベストアンサー
- 回答日時:
ヘッダ情報が得られないと無理だと思います。
ソケット通信でヘッダ情報を取得すればLocationの場合にはヘッダに
HTTP/1.1 302 Found
と
Location: http://example.com/
が含まれるので判別できます。
回答ありがとうございます。
file_get_contents の前にソケット通信でヘッダを取得してリダイレクトを検出することにしました。
No.2
- 回答日時:
始めにget_headers()でヘッダを取得して、Locationヘッダが含まれていればLocationヘッダで指定されたURLからヘッダを取得し、Locationヘッダが含まれていなければそのURLからコンテンツを取得するようにすれば良いでしょう。
っていうか勝手にPHPのこととして回答しているんですが、PHPの話でいいんですよね?
PHPの質問ならPHPのカテゴリでするようにして下さいね。
参考URL:http://www.php.net/manual/ja/function.get-header …
回答ありがとうございます。
カテゴリについては、投稿後に間違いに気がつきましたが、修正できないようなので、申し訳ありません。
PHP4 のため get_headers() がなかったので、自前でヘッダを取得するようにし、リダイレクトを検出するようにしました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Outlook(アウトルック) outlookでのメール自動リダイレクトができません 2 2022/05/09 20:44
- Oracle TOPページ以外の、301リダイレクトの記述設定について 1 2022/08/12 17:14
- サーバー 301リダイレクトができる条件を知りたいです 2 2022/10/25 11:21
- その他(プログラミング・Web制作) PHPの$_SERVER["REQUEST_URL"]の0文字目は必ず"/"になることになってるの? 1 2023/07/07 17:42
- サーバー 新サイトへのミグレーション 1 2022/09/11 10:25
- その他(開発・運用・管理) 【至急】.htaccessによるディレクトリ単位でのリダイレクト 2 2023/08/10 13:46
- その他(プログラミング・Web制作) 恒久的リダイレクトについて 2 2023/07/13 15:58
- その他(プログラミング・Web制作) 301リダイレクトについて 1 2022/09/30 19:41
- その他(ブログ) Brogger独自ドメインから独自ドメインへ変更する 1 2022/09/22 13:21
- WordPress(ワードプレス) ワードプレスのURLを書き換えてしまい、ログインできなくなりました 1 2022/04/01 22:10
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
TeXのヘッダとフッタについて
-
file_get_contents でリダイレ...
-
レスポンスヘッダとエンティテ...
-
HTTP 200 OKの後のリダイレクト?
-
ルータでのMTU、MSS設定値の検...
-
HTTPヘッダの大きさ
-
AccessVBAで「このフィールドに...
-
cookieを表示させたい。(ブラウ...
-
TCPヘッダのチェックサム算出方法
-
帯域計算について
-
6月の第2 第4火曜日は何日...
-
月の第一週とは
-
DBを10件毎に表示ページング...
-
よくある 『 第○(1・2・3・4・...
-
毎○曜日って、使いますか?
-
エクセルで相対パスの書き方を...
-
エクセルで毎月第2週日の水曜日...
-
Perlでuse strictと %inの共存
-
perlのcgiで、変数の中身を表示...
-
週2回のペースって だいたい何...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでExcelのヘッダーに文字列+...
-
[C#]ListView一覧表示時の幅設...
-
perlでHTTP Request Headersの...
-
AccessVBAで「このフィールドに...
-
ヘッダのinclude順
-
TCPヘッダのチェックサム算出方法
-
関数ヘッダ?
-
Content-type: text/htmlが表示...
-
レスポンスヘッダの出力方法
-
file_get_contents でリダイレ...
-
LinuxでRTPヘッダを作りたいの...
-
リストコントロールの列幅を固...
-
EXCEL:ヘッダー日付を年号で?...
-
SpreadDesignerの列ヘッダ
-
LWPでHTTPSサイトからコンテン...
-
HTTP 200 OKの後のリダイレクト?
-
C# クッキーを使ってウェブブ...
-
ftpでのネットワークバイトオー...
-
HTTPヘッダの取得方法
-
自作ヘッダファイルについて (C...
おすすめ情報