• ベストアンサー

htmlにアクセスしたときにperlでクッキーを保存

perlにアクセスしたときにクッキーに保存するのはわかるのですが、 htmlにアクセスしたときにperlでクッキーを保存するようにしたいのですが、 どのようにしたらいいのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.1

>perlにアクセスしたときにクッキーに保存するのはわかるのですが、  う~ん。分かってない。 Cookieは、HTTPサーバーにファイルを要求するときのヘッダ(HTTP要求ヘッダ)に加えて送信され、HTTPサーバーからの応答ヘッダに加えて送信されるもので、「Cookieに保存される」のではなく、Set-Cookieとして送信されたデータをブラウザがデータとして保存しているものです。  たとえば、このページにアクセスすると GET /qa4877985.html HTTP/1.1 Host: oshiete1.goo.ne.jp User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.0.8) Gecko/2009032609 Firefox/3.0.8 ・・・【中略】・・・ Referer: http://oshiete1.goo.ne.jp/mypage_interest.php3?start=20&pt=0&k=&qt=all Cookie: __utma=3447・・・【中略】・・・; のように送信され HTTP/1.x 200 OK Date: Tue, 14 Apr 2009 02:09:18 GMT Server: Apache Set-Cookie: c_sid=・・・【中略】・・・ のようにかえって来るものです。  したがって、 >htmlにアクセスしたときにperlでクッキーを保存するようにしたいのですが、  ではなくて、HTTPサーバーから、そのファイルのmimeがなんであれ(HTMLであろうがGIFであろうがJPPEGであろうが無関係)、応答ヘッダにSet-Cookieコマンドを含めればよいだけです。  このosieteのページにアクセスすると、HTMLを返す時の応答ヘッダに書き加えるということです。  ですので質問は、 >サーバーから(HTML)ファイルを提供するときに、Set-Cookieコマンドを含める方法は?  ということですから、 >perlにアクセスしたときにクッキーに保存するのはわかるのですが、  と同じ方法でよいということです。perlではなくて、 「Perlで書かれたCGIがファイルを提供するとき」と同じ方法で、

その他の回答 (1)

  • zxcv0000
  • ベストアンサー率56% (111/196)
回答No.2

Cookie 書き込みの基本的な方法はふたつです。 1 レスポンスヘッダに Set-Cookie: を含める。 これは、普通はCGIで行います。 # 他の方法が知りたいと言うご質問なんですね? 2 JavaScript で document.cookie を設定する。 # この方法で良いでしょうか?

参考URL:
http://www.tohoho-web.com/wwwcook.htm

関連するQ&A