目次 | CGIレスキュー | 免責・問合
  NPH-レスポンスヘッダ

(株)友林堂
(株)友林堂



Non-Parsed Heder

これについてはとほほのCGI入門などで知っていただくとして、 これを使ったCGIスクリプトで気が付いたことをメモしておきたいと思います。


レスポンスヘッダ

※ ( )内は解説の症状を確認したバージョン。

レスポンスヘッダの設定について、 IEでは、どの順番に並べても動作しましたが、Netscape(7.1)Opera(7.5)では、 ※1をどのヘッダよりも一番最初に置かないと動作せず、 Firebox(1.0)では、 クッキーもセットされないという症状を体験しました。

print "HTTP/1.0 20 OK\r\n"; # ←※1
print "Set-Cookie: NAME=VALUE\r\n"; # クッキーのセット
print "Content-type: text/html\r\n"; # コンテントタイプ
print "\r\n"; # ヘッダの終わり


データ送信せず更新

チャットなどのデータが更新されない場合に、変わらぬ画面を何度も表示しても負荷もかかり無駄。 そこで、レスポンスヘッダだけ送信して、データの更新がなければ、何もデータを送信しない(現在の画面を表示したまま処理終了)処理をしたいもの。 これをNPHスクリプトとして実行しても、画面は何も変化しない(再読み込みもしない)。 これを利用した一例がミニチャット3です。

print "HTTP/1.0 204 No Content\r\n";
print "Cache-control: no-cache\r\n"; # キャッシュしない
print "Pragma: no-cache\r\n"; # キャッシュしない
print "Expires: Sun, 01-Jan-1995 01:00:00 GMT\r\n"; # 期限を過去にする(キャッシュ削除)
print "\r\n";
exit;


Powered by CGI RESCUE(R)