• 締切済み

apache + tomcat + jsp

apache + tomcat + jsp であるサイトを作っています。 文字コード「Shift_JIS」のHTMLページを返しているのですが、 ブラウザの設定がデフォルト「Unicode」になっている場合、 文字化けします。(「Shift_JIS」に設定し直すとみれます。) あるサイトを見ると、同じく「Shift_JIS」のHTMLページがあるのですが、 ブラウザが勝手に文字コード「Shift_JIS」と判断して表示しています。 上記のような動きをブラウザにとらせるには、どのような事をするべきなのでしょうか? (ちなみに、携帯用サイトでPCからの閲覧可です)

  • Java
  • 回答数2
  • ありがとう数1

みんなの回答

  • yyyyzzzz
  • ベストアンサー率0% (0/0)
回答No.2

Tomcatルートディレクトリのconfフォルダの中のweb.xmlの設定 <servlet> <servlet-name>jsp</servlet-name> <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> <init-param> <param-name>javaEncoding</param-name> <param-value>Shift_JIS</param-value> </init-param> にしてみたらどうでしょうか? JSPをプリコンパイルする際に、デフォルトだとUTF-8になって文字化けしたりします。 プラス、PED02744が回答されているように、~;charset=Shift_JISや、metaタグの記述も必須ですね。

mozori01
質問者

お礼

ご回答ありがとうございます。 Tomcatのweb.xmlに上記設定を追加してみましたが、 結果は変わらずでした。 jspのcharset、tomcatのweb.xml以外に、原因は考えられますでしょうか? また、うまく動作しているサーバ環境と、動作しないサーバ環境の違いは、 apacheだけです。apacheに何か設定追加する項でもあるのでしょうか?

  • PED02744
  • ベストアンサー率40% (157/390)
回答No.1

JSPで作っているページだとして、 ~.jsp の先頭に <%@ page contentType="text/html; charset=Shift_JIS" %> があって、 <meta http-equiv="content-type" content="text/html; charset=Shift_JIS"> これが書かれていても化けるということでしょうか?

mozori01
質問者

補足

はい。charaset=Shift_JISは指定しています。 実は上記の、  1)ブラウザが「Shift_JIS」と認識しないHTML  2)ブラウザが「Shift_JIS」と認識するHTML は、同じjspが発行しています。 あるサーバで動いていた、「apache + tomcat + jsp」サイトを、 別サーバに移行(中身はコピー)してきたときに、この現象が発生しました。 そのため、apacheあたりに何か設定が必要なのか、とも思っていたのですが・・どうなんでしょうか?

関連するQ&A

  • Apache2での文字化け

    先日、今まで使ってきたApache1.3.20(Win32)からApache2.0.45をインストールしたのですが、 その後、文字化けの現象が出てしまいました。 こちらのサイトで検索したところ、Apache2のデフォルト文字コードが、 デフォルトでヨーロッパ系の文字コードになっているため だという事がわかりました。 何とかしてシフトJISをデフォルトの文字コードとしたいのですが、 設定は可能でしょうか?

  • tomcat、apacheにてJSPが表示されない

    http://localhost:8080/ と入力したときにtomcatの画面がでるので tomcatの設定はできていると思っているのですが eclipseでJSPを作成し、 \Program Files\apache-tomcat-6.0.13\webapps\bihinkanri\WEB-INF にJSPファイルを置き、 http://localhost:8080/bihinkanri/Itiran.jsp とURLに入力したのですが HTTPステータス404が出てしまいました。 なぜでしょうか・・・。 初心者で原因がわかりません・・。 お願いします。

  • ApacheとTomcatの連携が出来ない

    Apacheのドキュメントルートフォルダ内でPHPとPerlが動くよう設定しています。今回、さらにJSPも動かせるようにTomcatを導入し、Apacheとの連携を試みたのですが、どうしても解決できない問題に躓いてしまいました。 http://journal.mycom.co.jp/special/2007/tomcat6/007.html 上記のサイトのように設定したのですが、まったくうまくいきません。 コメントアウトも外しましたし、リダイレクトの設定もしましたが、http://localhost/リダイレクト先/でアクセスすると404エラーが出ます。:8080とTomcatのデフォルトポート番号を足すとアクセス出来るので、リダイレクトが出来ていないようです。が、サイトに載っている作業は全部やったので自分ではお手上げ状態です。なにがいけないのでしょうか??? 環境は OS: Windows XP Apache: v2.2.4 Tomcat: v6.0.13 です。

  • Apache 文字化け

    以下の環境で、WebブラウザをJSPで作成し、入力した日本語をServletから出力させるプログラムを作成しています。 【環境】 OS:Windows XP Webサーバ:Apache 2.2.4 サーブレット、JSPコンテナ:Tomcat 5.5.23 コネクタ:mod_proxy_ajp 【事象】 Webブラウザより、日本語を入力⇒クエリ送信⇒結果画面をした結果、Webブラウザから入力した値のみが文字化けします。 JSP側でもharset=Shift_JISを指定していますし、Apacheのhttpd.confでもAddDefaultCharset offを設定しています。なんでしょうか。。。わかりません。アドバイス宜しくお願い致します。

  • JSPでincludeファイルの日本語が文字化けします。

    tomcat3.1を使用しています。 JSP本体でcharset=Shift_JISを設定し、SJISコードで記述した文字は正常に表示されますが、 <%@ include file="file.html" %>にて読み込んだfile.htmlに記述した日本語が文字化けします。 file.htmlが文字化けしないようにする方法を教えてください。

  • Eclipse の エディターでの文字化け

    Eclipse で jspやhtmlファイルが文字化けしているのですが、どうやったら直りますか?携帯用のホームページを作成しているのでshift-jisを使いたいのですが、テキストファイルのエンコードは現在MS932になっています。 いまいち文字コードについてよくわかっていないのですが、先ほどtomcatのエンコードに「Windows-31J」を指定すればよいとの記述をみつけたので、やってみたのですが、変わりはありません。 また、これだと携帯からみれないってことになりますか? それとブラウザに表示した時に文字化けしているページもあります。しかし、ほとんどはちゃんと表示されています。この違いはなんでしょうか? 初心者でよくわかっていないので、よろしくお願いします。jspではcharset=SHIFT_JISを指定しています。(htmlもmetaタグでshift-jisを指定しています。)

    • ベストアンサー
    • Java
  • jspの文字化けについて

    javaでDBから取得したデータをjspで表示する際に 文字化けしてしまいます。化けるのは「~」です。 ちなみに文字コードはshift_JISです。 jspにcontentTypeなども記述してあるし、 色々なサイトを検索して、様々な方法を試したのですが・・。 どなたかご教授お願いします。

    • ベストアンサー
    • Java
  • TomcatがApacheと連動しているのか、単独で動いているのかわかりません。

    ★動作環境: Tomcat3.3.2 Apache2.0.53 Java J2SE1.3.1_15 mod_jk.dll WinXP で動作させようとしています。 それぞれをインストールして、特に設定変更することなく、 コマンドプロンプトを開いて、 c:\tomcat3.3.2\binへディレクトリを移動して、startupと入力すると、tomcatが正常に動作します。 そして、Apacheを起動して、 ブラウザで、http://localhsot:8080/exampleと入力すると「/のディレクトリの一覧」 ファイル名 images/ jsp/ servlet/ が表示されます。 でも、これって、TomcatとApacheが連動して動いているんじゃなくて、Tomcat単独で動いているんではないかとおもって、 そもそも、TomcatとApacheが連動して動いているってどうやったらわかるんでしょうか? http://localhost/exampleと入力しただけで、表示されれば連動してることになるんでしょうか? Webで検索して、TomcatとApache の設定について書いてるのを参考にして、httpd.confをいじってみてもApachが動作してくれません。 やってみたことは、次のとおりです。 1)apacheのmodulesディレクトリにmod_jk.dllをコピーして置く。 2)apacheのhttpd.confファイルの最後に以下を追加する。 Include "C:\tomcat3.3.2/conf/mod_jk.conf-auto" 3)Tomcatを起動する 4)Apacheを起動させようとする。 このように設定するように書いてあるサイトが多かったので、やってみても、Apacheが起動しなくなります。 どのように、設定すればいいのでしょうか?

    • ベストアンサー
    • Java
  • MySQLの文字化け

    Win XP MySQL4.0.13 TOMCAT4.1 APACHE2 以上を使用して自宅にて開発を行っております。 HTMLページより入力されたデータをjspファイルへ渡し、jspファイル内へ記述されたSQL文によりデータベースへの書き込みを試みております。 データベースへの書き込み自体はできるのですが、文字化けで困っています。 書き込み後、プロンプトよりselect文で確認すると、日本語のみ文字化けし、アルファベットは大文字が小文字にところどころなってしまいます。数字は問題ありませんでした。 具体的には「あいうえお」が「BDFHJ」に文字化けしていました。 MySQLのコンソールのMY.ini Setuoタブに [mysqld] default-character-set=sjis [mysql] default-character-set=sjis と指定しており、HTML,jspファイル内でもshift-jisを指定しております。 ご教授よろしくお願いしたします。

    • ベストアンサー
    • MySQL
  • EclipseでのJSP・Servlet開発について(文字化け)

    EclipseでJSP、Servletの開発をしております。 文字化けについての質問なのですが、ブラウザ上で表示される文字が 文字化けしてしまいます。JSPの頭に <%@page contentType="text/html; charset=SHIFT_JIS"%> と入れており、ブラウザでもエンコードはShift_JISとなっています。 自分なりに原因を調べたのですが、○○.jsp→○○_jsp.javaに変換?する際に 文字化けしているようで、Eclipse上でJSP、Servletを見ると普通なのですが、 ○○_jsp.javaは見事に文字化けしていました。 文字化けした○○_jsp.javaを削除して再度表示(_jsp.javaの再作成)も試みた のですが、同じ結果でした。 1ヶ月以上触っていないパッケージのソースも突然文字化けを起こしたので 原因も分からない状態です。 原因・直し方がお分かりの方、是非ともご指南下さい。 情報不足でしたら追記させて頂きますので、どうぞ宜しくお願い致します。

    • ベストアンサー
    • Java

専門家に質問してみよう