• 締切済み

クッキーについて教えてください

クッキーは、URLのパスごとに持っているので http://hoge/cgi-bin/ http://hoge/servlet/ http://hoge/jsp/ で利用するクッキーが違ってきます。 上記のディレクトリにあるCGI・サーブレット・JSPで おなじ情報を共有したいのですが、どうすればよいでしょうか? 仮想のURLのパスにマッピングすればできそうな気もするのですが 単純に一つのディレクトリを一つのマッピングのではないので どのように設定すればよいか分かりません。 (そのようなことができるのかも分かりません。) サーバ構成は WindowsNT4.0+IIS+Tomcat です。 よろしくお願いします。

  • CGI
  • 回答数3
  • ありがとう数3

みんなの回答

  • NINJA104
  • ベストアンサー率43% (133/306)
回答No.3

>ということは、クッキーを設定する時に >domain=hoge; path=/ (ルート) >を指定するということでしょうか? です。 この様な設定でcookieを利用している他サイトの例として、良く見掛けるtcup掲示板サービスがあります。 あっ、path=/; としてください。

  • arata
  • ベストアンサー率49% (139/279)
回答No.2

Sessionオブジェクトを使用してみては? あっ、でもCGIから使えないか・・・駄目ですね。

参考URL:
http://www.atmarkit.co.jp/fjava/special/servlet01/jservlet02.html
fuuta0422
質問者

お礼

早速の返答ありがとうございます。 確かにCGIさえいなければ、その方法がよいのですが・・・ ということで、いかに既存のシステムがあるとはいえ、 できるだけ同じ構成でシステムを作りましょう(^^;

  • NINJA104
  • ベストアンサー率43% (133/306)
回答No.1

単純に http://hoge/ まででクッキー情報を生成すれば宜しいかと思います。

fuuta0422
質問者

お礼

早速の回答ありがとうございます。 ということは、クッキーを設定する時に domain=hoge; path=/ (ルート) を指定するということでしょうか? (ちなみに今はこれらの指定はしていません。) また、クッキーを取得する時にドメインおよびパスを 指定する方法が分からない(本当にない?)のですが 取得されるクッキーは、それより上位のパス (この場合、http://hoge/ とか)のクッキーも取得 できるということでしょうか? よろしくお願いします。

関連するQ&A

  • サーブレットについて

    WIN2000 j2sdk1.4.1_06 Tomcat 4.1.24です。 よろしくお願いします。 困っているのは、はサーブレットが動かないということです。 コンパイルすると C:\j2sdk1.4.1_06\bin>javac Hello.java パッケージ javax.servlet は存在しません。 import javax.servlet.*; というエラーになります。 j2sdkとトムキャットをインストールし、 PATH等の設定も行い Tomcatの起動も行なってからやっているのですが、 JSPはちゃんと表示してくれるのですが、 サーブレットだけ動きません。 APIを見ると確かに標準のものには載っておらず サーブレットの方に載っているようなのですが、 何か他に設定もしくは、インストールする必要が あるのでしょうか?

    • ベストアンサー
    • Java
  • サーブレットは動くがJSPだけ動かない

    Servlet/JSPでの開発をTomcatで行っているのですが、webapps/examples/jspの JSPサンプルが起動しませんでした。Internal Servlet Error 500が返されてしまい ます。 開発環境 Windows 2000 Java2 SDK 1.3 Jakarata Tomcat 3.2.1 環境変数 TOMCAT_HOME=C:\jakarta-tomcat-3.2.1 JAVA_HOME=C:\jdk1.3 PATH=%PATH%;C:\jdk1.3\bin CLASSPATH=%CLASSPATH%;C:\jakarta-tomcat-3.2.1\lib\servlet.jar 気になるのは、Oracle8iのトライアル版をインストールして いる点です。Oracleをインストールすると以下のような環境変数が設定されます。 Oracleインストール後の環境変数Path Path=C:\Oracle\Ora81\bin;C:\Program Files\Oracle\jre\1.1.7\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\jdk1.3\bin;C:\Oracle\Ora81\orb\bin 1.1.7のjreがかなり怪しいとは思うのですが。 もう一度、質問をまとめてみます。 ・exampleサーブレットは動くが、example JSPだけが動かないのはどうしてでしょう? ・とにかくJSPだけを動かしたいのですが、方法はあるでしょうか?  (JDBC接続を行うため、Oracleは削除できないという前提で) 皆様の知恵をお貸しください。

    • ベストアンサー
    • Java
  • 困ってます

    自分は今TomcatでサーブレットとJSPの勉強をしています。 サーブレット(hello.class)はTomcat-conf-server.xmlに <Context path="/test"    docBase="webapps/test" crossContext="false" debug="0" reloadable="true" > </Context> を追加したことにより http://localhost:8080/test/servlet/hello で動作は確認しました("Helloworld"の表示のみ) JSP(hello.jsp)は Error: 500 Internal Servlet Error:が表示されて実行できません。 ちなみにhello.jspはtestディレクトリの直下に保存しています。 ・hello.jspのスクリプト <%@page contentType="text/html;" %> <html> <head> <title>JSPTEST</title> </head> <body> <% out.println("HELLO WORLD!"); %> </body> </html> ※ちなみにcontentType="text/html;charset=Shift_JIS"とすると  ページが見つからないというエラーになりました。 ・JSPファイルを表示するアドレス http://localhost:8080/test/hello.jsp 開発環境は RedHatLinux7.2 Java2 SDK 1.3.0 Jakarata Tomcat 3.2.4 で、 環境変数は JAVA_HOME=/usr/java/jdk1.3.0_02 TOMCAT_HOME=/usr/src/jakarta/tomcat PATH=$PATH:$JAVA_HOME/bin:$TOMCAT_HOME/lib/servlet.jar CLASSPATH=. です 何か分かる事がありましたらご教授御願い致します。

    • ベストアンサー
    • Java
  • JSPからサーブレットを呼び出す際に404エラー

    現在、tomcatでサーブレット/JSPの勉強をしています。 参考書に載っている、jspの入力画面で入力した値をサーブレットで受け取り、そのまま表示させるようなサンプルを作成しています。 JSPの入力画面は表示できるのですが、値を入力してサーブレットに移動する際、404エラーが出てしまいます。 ・ファイルの配置 basic |-input |...|-echo.jsp |-WEB-INF |...|-src |......|-input |.........|-EchoServlet.java |...|-classes |......|-input |.........|-EchoServlet.class |...|-web.xml ・echo.jsp内のサーブレットのパスに関する記述 <FORM ACTION="../servlet/input.EchoServlet"> ・web.xmlの記述 <servlet> <servlet-name>EchoServlet</servlet-name> <servlet-class>input.EchoServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>EchoServlet</servlet-name> <url-pattern>/servlet/EchoServlet</url-pattern> </servlet-mapping> tomcatの/confのinvokerのコメントは外していません。 過去の質問も調べてみて、上記の記述の辺りがおかしいのではないかと 思うのですが、、お気付きの点がありましたら教えて頂けないでしょうか。

    • ベストアンサー
    • Java
  • Tomcatにおけるサーブレットの呼び出し

    tomcatに関してですが、現在サーブレットからjspを呼び出すようなことをしたいと思い、web.xmlを以下のように設定し、”http:localhost:8080/servlet/Login”としても『HTTP Status 404 - 』が返却されます。jspからサーブレットを呼び出すことはできるのですが・・・(この場合、jspファイルをWEB-INFの直下にディレクトリを作成するとやはりアクセスができませんでした。WEB-INFと同レベルに置けばアクセスは可能でした。)。 どなたかわかる方がいれば教えて下さい! よろしくお願いします。 --------------- 環境 --------------- Windows2000Server eclipse ver2.1.1 tomcat ver4.1 --------------- ディレクトリ構成 --------------- WEB-INF Lclasses | LLogin_serv.java Ljsp LLogin.jsp --------------- web.xml --------------- <?xml version="1.0" encoding="shift_jis"?> <!DOCTYPE web-app PUBLIC "-//SUN Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app> <servlet> <servlet-name>Login</servlet-name> <servlet-class>serv.Login_serv</servlet-class> </servlet> <servlet-mapping> <servlet-name>Login</servlet> <url-pattern>Login</url-pattern> </servlet-mapping> </web-app> 補足:tomcat-confにあるweb.xmlの『invoker』はコメントを外し有効にしてます。

    • ベストアンサー
    • Java
  • httpd.conf内ScriprAlias設定に関して

    何時もお世話になります。 現在APACHE2でCGIの設定をしております。 過去の質問などを色々と読んでおりますが、ScriptAliasの設定で判らない部分がございます。 一つのディレクトリ内のcgi-binでは動くのですが、複数のディレクトリで動かそうとすると、ソースが表示されてしまいます。 複数のディレクトリ内でそれぞれCGIを動かす為の設定はどの様にしたら宜しいのでしょうか・・・? 現在 ScriptAlias /cgi-bin/ "usr/local/apache2/cgi-bin/" <Directory "home/hoge1/cgi-bin/" Options +ExecCGI </Directory> <Directory "home/hoge2/cgi-bin/" Options +ExecCGI </Directory> となっております。 それぞれにScriptAliasのパスを書かないとダメ?と思い、 デフォルトを切って ScriptAlias /cgi-bin/ "/home/hoge1/cgi-bin/" ScriptAlias /cgi-bin/ "/home/hoge2/cgi-bin/" 等を付けたり切ったり、何度かパタンを試しましたが巧く行きません。 Aliasの考え方が間違って居るのでしょうか・・・? ご指導の程、お願い申し上げます。

  • tomcatのエラー処理について

    Tomcatが設定できなくなんとか試行錯誤をしているうちにlogsディレクトリの中にやっと(今までは全然表示されず)エラー内容(2つのファイル)が以下ように表示されてきました。処理の仕方がわかりません。アドバイスお願いします。 一つ目は jsper.logファイル 2002-02-03 00:26:34 - Scratch dir for the JSP engine is: C:\JAKART~1             \work\localhost_8080%2Fexamples 2002-02-03 00:26:34 - IMPORTANT: Do not modify the generated servlets 二つ目は servlet.logファイル 2002-02-03 00:26:34 - path="/examples" :jsp: init 2002-02-03 00:26:34 - path="/admin" :jsp: init 2002-02-03 00:26:35 - path="" :jsp: init 2002-02-03 00:26:35 - path="/test" :jsp: init というような内容です。このあとどうすれば???????? 現在以下の環境内容です。 win98SE tomcat3.2.4 PATH=C:\jdk1.3.1_01\bin;c:\Jakart~1t\bin SET JAVA_HOME=C:\jdk1.3.1_01 SET TOMCAT_HOME=C:\Jakart~1 SET CLASSPATH=%TOMCAT_HOME%\lib\servlet.jar;%JAVA_HOME%\lib\tools.jar

  • 困ってます。教えて下さい

    質問を見て頂きありがとうございます。アクセス解析のCGIを設置する為設定をしているんですが以下のの設定の方法があまりよく分かりません。申し訳ありませんが教えて頂けませんか。 サイトトップURLとHTMLファイルのマッピング # アクセスページのタイトルは、多くのサーバにおいて自動的に取得できま # すが、URLに「~(チルダ)」が含まれている場合や、一部のサーバ環境で # は自動的に取得できません。その場合には、ここにURLとCGIからのパスと # のマッピングを定義して下さい。CGIからの相対パス、サーバルートから # の絶対パスどちらでも結構です。 # ここでマッピングをマニュアル設定する場合には、 # $URL2PATH_FLAG = 1; # としてから、%URL2PATH にマッピングを定義して下さい。 # # 例: # サイトのトップURL : http://www.hoge.com/~foo/ # acc.cgiからの相対パス : ../ # の場合、 # # $URL2PATH_FLAG = 1; # %URL2PATH = ('http://www.hoge.com/~foo/' => '../'); # # とします。もしサーバルートからの絶対パスが分かっていれば、 # # $URL2PATH_FLAG = 1; # %URL2PATH = ('http://www.hoge.com/~foo/' => '/home/foo/'); # # のように設定します。/home/ の部分は、サーバによって異なりますので、 # サービス事業者にお問い合わせください。 # # 注意: # 必ず、URLとパスの最後には、「/(スラッシュ)」を入れて下さい。 #-------------------------------------------------------------------- $URL2PATH_FLAG = 0; %URL2PATH = ('http://www.hoge.com/~foo/' => '/home/foo/'); 例えば相対パスで設定する場合、私のトップページアドレスがwww.ooo,comの場合どのように記述すればいいのでしょうか?ちなみにディレクトリ構成は マイドキュメント→フォルダA→フォルダacc→acc.cgi となっております。

  • IISの仮想ディレクトリ設定

    IISの仮想ディレクトリ設定について分かる方がいましたら教えてほしいんですけど、今ある物理ディレクトリをIISの仮想ディレクトリとしてマッピングさせて(物理ディレクトリにはイメージデータが入っています)ブラウザから直接イメージデータのファイル名を指定することで表示させるようにしたいのですが、IISでの仮想ディレクトリマッピングが分からなくて困っています。 そこで質問なのですが 1.そもそもIISでこのようなことは可能でしょうか? 2.できるのならばどのように設定すればよいでしょうか? 3.できないのならば何か方法はないでしょうか? 以上ですがよろしくお願いします

  • <Java>logファイルのエラー内容

    あるプログラムの練習をしているのですがサーブレットファイルを含めすべての ファイルはコンパイルできTomcat,Apacheを起動後webページで下記のエラー表示がでました。 Error: 500 Location: /Training/look Internal Servlet Error: という表示です。 ------logディレクトリのファイル中は以下のとおりです。---------------- ○servlet.logファイルには 2002-03-27 04:54:11 - path="/Traineing" :jsp: init 2002-03-27 04:54:19 - path="/Traineing" :Skill: init ○jasper.log 2002-03-27 04:54:10 - Scratch dir for the JSP engine is: C:\tomcat\jakarta-tomcat-3.2.1\work\localhost_8080%2FLesson 2002-03-27 04:54:10 - IMPORTANT: Do not modify the generated servlets という表示です。ちなみにTrainingはディレクトリの一部でSkillはサーブレット 名です。上記の内容だけだと対応ができなく困っています。以上の内容でわかりずらい場合は補足いたしますのでアドバイスお願いします。 現環境設定内容 win98SE tomcat-3.2.1 jdk_1.3.1_02

専門家に質問してみよう