Apache2.2とTomcat5.5でmod_proxy・mod_proxy_ajpを使用し連携を行っていますが、Apacheからjspへのリンククリック時jspが表示されず、jspファイルのダウンロードダイアログが表示される場合があるのですが、これはサーバの設定の問題なのでしょうか?


どなたか対応方法をご存知の方いらっしゃいましたらご教授のほどよろしくお願いいたします。

回答の条件
  • 1人2回まで
  • 登録:2008/05/12 03:41:01
  • 終了:2008/05/19 03:45:02

回答(3件)

id:pahoo No.1

pahoo回答回数5960ベストアンサー獲得回数6332008/05/12 09:28:13

ポイント27pt

Apacheの httpd.conf に下記の2行は加わっていますか?

AddType      text/jsp .jsp
AddHandler   jserv-servlet .jsp
id:taso1981

設定がなかったので追加してみましたが、改善しませんでした。

ご確認なのですが、設定は

<IfModule mime_module>

AddType text/jsp .jsp

</IfModule>

AddHandler jserv-servlet .jsp

こんな感じでよろしいのでしょうか?

2008/05/12 23:27:24
id:mj99 No.2

mj99回答回数138ベストアンサー獲得回数382008/05/12 11:47:34

ポイント27pt

ダウンロードダイアログが表示される場合がある

正常な場合と、異常な場合とがある、ということでしょうか。

Web.xmlには

<servlet-mapping>
    <servlet-name>
        jsp
    </servlet-name>
    <url-pattern>
        *.jsp
    </url-pattern>
</servlet-mapping>

と、書かれているのが一般です。

これは、”Test.JSP”など、拡張子が大文字だったりすると、パターンに一致しません。

この場合、JSPファイルはServlet処理されず、ソースファイルがプレーンなテキストとしてそのままクライアントに送信されてしまいます。

結果、クライアントでは「表示できないもの」と判断され、ダウンロードダイアログが表示されたりします。

JSPファイルの拡張子を小文字で統一すれば、とりあえず回避できるでしょう。

id:taso1981

web.xmlの設定ですが、設定自体は存在しておりました。

JSPのファイル名についてもすべて小文字です。

本日検証してみた所、拡張子がjspでもダウンロードダイアログが

表示されるファイルと表示されないファイルが存在する様です。

mime-typeあたりに問題があるのかと思っていたのですが、

どうやら一概にそうでもない様です。

拡張子が一緒のファイルでもこういった現象は起こりえるのでしょうか?

2008/05/12 23:37:23
id:moto_maka No.3

moto_maka回答回数15ベストアンサー獲得回数02008/05/13 00:49:37

ポイント26pt

まずはTomcatのポートに直接アクセスしてみてはどうでしょう?

http://xxxx:8080/hoge/hoge.jsp という感じで。


正常に動作すればApache-Tomcat連携の問題で、

正常動作しなければTomcatの問題、という切り分けができると思います。

あと、うまくいくファイルとそうでないファイルがあるのなら、

設定の問題ではなく、ファイル自身の問題のような気がします。

例えば、ファイル名に全角文字が使われているとか、空白が入っているとか・・・

id:taso1981

Tomcatに直接アクセスした場合は問題なく動作しております。

ファイル自体はまだ調査できていなかったので一度その線で

調べてみたいと思います。

2008/05/13 01:03:21

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません