CGIでのCOOKIE発行についての問題

このQ&Aのポイント
  • 自分のホームページで使っているCGIでクッキーが正しく動作していないようです。フレームを使用しているため、表示されるアドレスと異なるドメインが原因のようです。
  • 直接アドレスにアクセスするとクッキーは正常に動作しますが、フレーム内では正常に動作しません。
  • pathやdomain属性を設定しても解決しないため、フレームを使用しない対処方法を探しています。
回答を見る
  • ベストアンサー

COOKIEの発行について

今、自分のホームページで使っているCGIでクッキーが正しく動作していないようです。 動作しない原因がどうやら、 例hoge.hoge.to/cgi/hoge.html がフレームで、CGI自体は 例www.goo.com/~hoge/cgi/hoge/hoge.cgi と、ブラウザに表示されるアドレスと違うドメインだからみたいです。 直接、www.goo.com/~hoge/cgi/hoge/hoge.cgi にアクセスするとCOOKIEは動作しています。 フレームを使わないという対処方法以外に何か方法はないでしょうか? pathやdomain属性をつけてみたりしましたが解決しませんでした。 よろしくお願いします。

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

  • ベストアンサー
  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

> フレームを使わないという対処方法以外に何か方法はないでしょうか? ありません。理由は、COOKIEを受け入れないのはブラウザ側の問題なので、「サードパーティのCOOKIEを受け入れない」ブラウザが別ドメインと認識した時点でもうアウトですから。 少なくともHTMLやCGIで解決できる問題ではないね。HTTPレベルでの話やなぁ。

tomoya117
質問者

お礼

返信ありがとうございます。やはり無理ですか・・ 掲示板の名前を毎回入力してもらうのは手間なので、ページ構成を変更してフレームの位置を変えることにします。

関連するQ&A

  • cookieのdomain指定

    http://www.***.com/ でcookieを生成して http://www.+++.jp/hoge/ 以下でその値を読み込みたいので、 document.cookie=値; path=/; domain=www.+++.jp とJavaScriptで書きましたが、 http://www.+++.jp/hoge/ のほうで 値が取得できません。 ちなみに値の取得はCGIで行っています。 (ブラウザ:IE、OS:WinXP) pathやdomainの指定が間違っているのでしょうか? そもそも、指定したpathやdomainの値は Cookie情報の保存されているテキストには書き込まれないのでしょうか? pathやdomainの指定をしない場合はcookieファイルにデータが上書きされたりしているのは確認したのですが・・・。 困っています。よろしくお願いいたします。

  • Cookieが正しく取得できない

    domain="xxxx.com" path="/" でセットしたCookieを <script type="text/javascript" src="aaa.xxxx.com/cgi-bin/aaaa.cgi"></script> と指定したCGIで取得できない。 通常であれば domain="xxxx.com" path="/" でセットしたCookieを http://aaa.xxxx.com/cgi-bin/aaaa.cgi にアクセスした際に取得することはできるはずですが、 <script src="・・・・・・"></script> の形で指定すると取得できなくなることはあるのでしょうか?

  • 特定のdirで発行したcookieを上のdirで参照できますか?

    特定のdirで発行したcookieを上のdirで参照できますか? クッキー発行では、PATHやドメイン等は設定しておらず、クッキー名とUserIDとPASSしか発行していないのですが、 PATHを設定した場合、クッキー値は、クッキーを生成したWebページ、同じディレクトリ内のWebページ、 同じディレクトリ内のサブディレクトリ内のWebページで参照が可能らしく、 省略時はCookie を設定したページのパス名になる。との事らしいのですが、 /A/a1/bbs.cgiへ認証した際に発行されたクッキー(クッキー名/ID/PASS)を /A/bbs.cgiで参照ってできますでしょうか。 上の階層である /A/bbs.cgi(同じCGIスクリプト)でクッキー情報を参照した場合、クッキー名だけが参照できている状況で困惑しています。 どなたか正しい情報をご掲示頂けませんでしょうか。宜しくお願い致します。

    • ベストアンサー
    • Perl
  • NN4だけクッキーが入らない

    ログインのCGIを作っているのですが、Set-Cookieヘッダにdomainの指定をすると、NN4ではクッキーが入らないのです。 出力しているヘッダは次のような感じです。 Set-Cookie: A=1; expires=Thu, 01-Jan-2004 00:00:00 GMT; domain=.hoge.jp; path=/ 他のブラウザではうまく行くことを確認しています。 またNN4でも、domainの指定さえなければうまく行きます。 思い当たる要因というと、 ・開発環境がローカルサーバ(192.~) ・ログインページがサブドメインなし(http://hoge.jp/~) くらいです。(関係ないかもしれませんが、一応) 解決方法などありましたら、よろしくお願い致します。

    • 締切済み
    • CGI
  • JavaScriptによるcookieの取得

    firefoxでネット巡回しています。 (A) HttpOnly属性が付与されていないcookieがパソコン内に保存されている時 悪意のあるサイトにjavascriptを仕組まれているとパソコン内のcookieを取得されるようなのですが、パソコン内に保存されているcookieの domain属性 path属性 secure属性 という3つの属性の内、1つでも悪意のあるサイトと一致しない場合は、悪意のあるサイトにjavascriptが仕組まれていてもパソコン内のcookie情報を取得できないのでしょうか? (B) HttpOnly属性が付与されているcookieがパソコン内に保存されている時、悪意のあるサイトがAjaxを使ってパソコン内のcookie情報を取得することが出来てしまうのでしょうか?

  • 異なるサーバで発行されたcookieを読み取れますか

    こんばんは。 http://aaa.test.co.jpというサイトで以下のcookieを発行します。 名前:testcookie ドメイン:.test.co.jp パス:/ このtestcookieをhttp://bbb.test.co.jpのサイトで取得(読取り)することは可能でしょうか? aaa.test.co.jpとbbb.test.co.jpは、物理的には別サーバとなります。 1つのブラウザで、http://aaa.test.co.jp ⇒http://bbb.test.co.jpへ画面遷移する事を想定しております。 どうぞよろしくお願いいたします。

  • Cookieが保存できない。

    CGIをつかってクッキーを保存しようと試みています。 以下のように記述しておりますがなぜかクッキーファイルが生成されません。 print "Content-type: text/html\n"; print "Set-Cookie: NAME=test\n"; print "\n"; print "テスト"; 何か問題がるのでしょうか?もちろんブラウザ上ではクッキーは有効にしていますし、ほかの他クッキーファイルは存在します。 ブラウザはIE6.0です どなたかご教授お願いします。

    • ベストアンサー
    • CGI
  • セットしたクッキーを別のドメインで有効にするには

    cgi(perl)を使用してクッキーをセットし、別のドメインに飛んでいくスクリプトを作っています。 例えば、cgiはwww.a.comにあり、クッキーをセットした後、www.b.comに飛びます。 www.b.comで、セットしたクッキーが有効になるようにしようと思ってます。 このような記述で試してみましたが、http://www.b.com/test/ でクッキーが有効になっていません。 書き方が間違っているのでしょうか? print "Set-Cookie: VALUE=hogehoge; path=/test/; domain=www.b.com\n"; print "Location:http://www.b.co.jp/test/\n\n"; ちなみに、クッキーが有効になっているかどうかの判断は、Bookmarkletの「クッキーを表示」を使用して確認しています。 http://bookmarklet.daa.jp/ 宜しくお願いします。

    • ベストアンサー
    • CGI
  • 引数処理に$ENV{'PATH_INFO'}を用いた際のクッキーについて

    自作cgiの引数を $ENV{'PATH_INFO'}を用いた形式 (hoge.cgi/aaa/bbb/cccという形式)に変更しました。 ところが、組み込んでいるアクセス解析用のクッキーが 本来ならば hoge.cgiに対してクッキー1個となるはずですが、 hoge.cgi で1個目 hoge.cgi/aaa で2個目 hoge.cgi/aaa/bbb で3個目 hoge.cgi/ccc で4個目  ・・ と、引数が変わるたびに発行されてしまいます。 ブラウザで確認すると同じ内容のクッキーが アクセスした際の引数の分だけズラズラと羅列されています。 本来あるべき形である hoge.cgiに対してクッキー1個にするには どのようにしたら良いのでしょうか。

    • ベストアンサー
    • CGI
  • cookieを設定

    Webブラウザが情報を保存する機能としてcookieがありますが、 JavaScriptでcookieを設定する方法と、 CGIがHTTPヘッダに「Set-Cookie」を含めてcookieを設定する方法が あるかと思います。 JavaScriptとCGIで設定する2つの方法のそれぞれのメリットは なんでしょうか? つまり、 JavaScriptを利用してcookieを設定する場合、Webサーバがcookieに 対応していなくても問題ないという利点はあることは分かりましたが、 他にはないのでしょうか? CGIでHTTPヘッダにcookieを保存しておいた場合、うれしいことは 何でしょうか?

専門家に質問してみよう