PHPでの質問です。


header("Content-type: text/html; charset=utf-8");
header("Location: http://example.com");

このようにした時にexample.comに対して
リクエストヘッダーの中身が
Content-type: text/html; charset=utf-8
になると思うのですがFileFoxのHTTPHeadersで見ても
Accept-CharsetやContent-Typeの部分に
utf-8
といった文字列がみあたりません。
レスポンスヘッダーに含まれないことがあるのはわかるのですが
headerにutfを指定しているのでどこかにutf-8が含まれていてもよさそうなのですが
header関数とHTTPヘッダーの意味を間違えてますでしょうか?

回答の条件
  • 1人5回まで
  • 登録:2007/03/01 10:22:57
  • 終了:2007/03/01 14:30:49

回答(2件)

id:STRing No.1

STRing回答回数351ベストアンサー獲得回数362007/03/01 10:28:51

ポイント35pt

header 関数は User-Agent に返却するヘッダを弄るものですので、Location: が返されると User-Agent は新たに example.com にリクエストを投げますが、それは単なる別のリクエストですから Accept-Charset に何を入れるかは User-Agent 次第でしょう。

そのように Accept-Charset を悪い表現ならば汚染出来てしまっては意図的に User-Agent が Acceptable でないものを送りつけさせられてしまうかと。

id:quocard

ありがとうございます。

関数に関して私の勘違いでした。

2007/03/01 14:30:08
id:b-wind No.2

b-wind回答回数3344ベストアンサー獲得回数4402007/03/01 11:32:17

ポイント35pt
header("Content-type: text/html; charset=utf-8");

この指定は自分(実行しているPHP)が出力するファイル形式を宣言するものです。

Location で飛ばした先とはまったくの無関係です。

id:quocard

ありがとうございます。

関数に関して私の解釈そのものが間違ってました。

2007/03/01 14:30:35

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません