- - PR -
Apache2+Tomcat5.5で、CGIを実行
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-02-02 01:57
お世話になっております。
Apache2とTomcat5.5を連携させて、Servlet,JSPは正常に動作をしております。 その連携させた環境で、CGIプログラムも実行させたいのですが、 プラウザからCGIプログラムにアクセスすると、HTTPステータスが404になってしまい お力添えをお借りしたいのですが。 OS:FC4 Tomcatの方では、以下の設定を行いました。 1) $TOMCAT_HOME/server/libのservlets-cgi.renametojarを servlets-cgi.jarとリネーム 2) $TOMCAT_HOME/conf/web.xmlの以下の部分をコメントを外しました <servlet> <servlet-name>cgi</servlet-name> <servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>6</param-value> </init-param> <init-param> <param-name>cgiPathPrefix</param-name> <param-value>WEB-INF/cgi</param-value> </init-param> <load-on-startup>5</load-on-startup> </servlet> <servlet-mapping> <servlet-name>cgi</servlet-name> <url-pattern>/cgi-bin/*</url-pattern> </servlet-mapping> 3) Apache2のhttpd.confには、以下のように設定しました <Directory "/home/*/web/WEB-INF/cgi"> AllowOverride None Options Includes ExecCGI Order allow,deny Allow from all </Directory> 上記の設定を行い、WEB-INF/cgiにあるCGIプログラムにアクセスすると 404になってしまいます。 ドキュメントルートは、/home/hoge/web になっており、 workers2.propertiesには、[uri:/*]という形で設定を行っております。 申し訳ありませんが、お力添えをお願い致します。 | ||||
|
投稿日時: 2006-02-02 20:07
TomcatでCGIを動かしたことがないので見当外れかもしれませんが、
まずはmod_jk2を通さない場合にどうなるか確認された方がいいと思います。 1. /WEB-INF以下なのでTomcatがアクセス拒否した 2. Tomcatの設定がそもそも間違っている 3. Apache2のCGIハンドラが先に404と扱ってしまった といったところでしょうか。 #3はApache側の挙動に詳しくないので大嘘な可能性大。 ところで、ApacheではなくTomcatでCGIを動かす理由って何でしょう? そんな設定にする必要なさそうだなと不思議に思ったもので。。 Filterでインターセプタ的な挙動をさせたいとか? | ||||
|
投稿日時: 2006-02-02 20:29
まず、ブラウザからどのようなURLでアクセスしたのか確認したいです。 「http://localhoat/cgi-bin/test-cgi」 とかですか? [ メッセージ編集済み 編集者: しましま 編集日時 2006-02-02 20:29 ] | ||||
|
投稿日時: 2006-02-03 00:05
しましまさん
ブラウザからは、 http://hogehoge/cgi-bin/hello.cgi というようにアクセスしました。 CGIプログラムの権限は、755になっております。 TomcatでCGIプログラムを実行したい理由としましては、 /home/hoge/web をドキュメントルートとしてあり、そのディレクトリ配下に.jspファイルなどがあります。 そして、workers2.propertiesに [uri:/*] と指定してしまっているため、TomcatじゃないとCGIプログラムが実行できないんじゃないか と思っておりますので。。。 http://hoge/aaa.jsp も、 http://hoge/cgi-bin も /home/hoge/webに行ってしまうので [ メッセージ編集済み 編集者: くろ 編集日時 2006-02-03 00:46 ] | ||||
|
投稿日時: 2006-02-03 00:51
くろです
お蔭様で、TomcatにてCGIプログラムを実行することが出来ました。 Apacheのhttpd.confの中のCGIに関する部分を コメントアウトしましたら、WEB-INF/cgi内で実行することが出来ました |
1