PHP ファイルと HTTP ヘッダー

WBOY
WBOYオリジナル
2016-06-23 14:32:321092ブラウズ

サーバー上で実行される PHP コードは、通常、クライアントの HTTP リクエストに応答するために使用されます。最も単純な PHP ファイルの 1 つは次のようになります。

<?phpheader('HTTP/1.1 200 OK');echo 'hello world!'?>

HTTP 標準によれば、HTTP メッセージは通常、HTTP ヘッダー (header) と HTTP 本体 (body) の 2 つの部分に分かれており、ヘッダー メッセージは次のようになります。前に出力された本文メッセージ。 PHP ファイルでは、header 関数を使用してヘッダー情報を出力し、echo コマンドを使用してボディメッセージを出力できますが、header 関数を使用しない場合は、ボディが出力される前にデフォルトのヘッダー情報が出力されます。したがって、以下の例の場合:

 <?phpheader('HTTP/1.1 200 OK');echo 'hello world!'?>

PHP ファイルの先頭に空行があるため、PHP はそれをボディとして出力するため、後で header 関数を実行するときに、ヘッダー情報が失われることを警告します。が出力されました。さらに、一部のファイルでは Unicode エンコードが使用されており、ファイルの先頭の BOM 文字が削除されていない場合にも、この問題が発生します。 PHP は ?> の後の改行文字を自動的に削除するため、PHP ファイルの末尾に空行があっても問題ありません。

いくつかの一般的な HTTP コードを見てみましょう。リストは次のとおりです:

200 OK 201 作成されました 400 不正なリクエスト 401 未承認 403 禁止 404 見つかりません 405 メソッドが許可されていません 415 サポートされていないメディア タイプ 500 内部サーバー エラー

参照:
[ 1] PHPマニュアル: PHPの最初のページ
[2] PHPマニュアル: header
[3] PHPマニュアル: echo
[4] ハイパーテキスト転送プロトコル -- HTTP/1.1
[5] HTTPヘッダーの詳細説明
[6] 修正HTTP ヘッダー (例)
[7] php 終了タグ出力余分な空白行 xml ページ表示エラー
[8] HTTP ステータス コード - Wikipedia

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。