• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:tomcatの設定に関する質問)

Tomcatの設定に関する質問

このQ&Aのポイント
  • Tomcatの設定に関する質問です。Tomcatのポート番号を変更したにもかかわらず、URLが変更されていない理由を知りたいです。
  • Tomcatをインストールし、ポート番号を変更しましたが、URLには変更が反映されません。なぜでしょうか?
  • Tomcatの設定について質問です。ポート番号の変更後にURLが変更されない理由がわかりません。どうすればURLを変更できるのでしょうか?

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

  • ベストアンサー
  • tkf-
  • ベストアンサー率58% (821/1398)
回答No.2

tomcat 2つ起動しているんですよ。 一つ目はあなたが設定変更したポートで立ち上げた、素のtomcat。 このポートのルートをリクエストすると、tomcatの画面が出るだけのものです。 もう一つが、eclipseから起動したtomcat。これはあなたが変更したファイルは一切見ていませんので、標準の8080で起動するようです。 ここには8080ポートで起動するということと、TomcatTest(プロジェクト名)/(設置したファイル名)でリクエストするとサーブレットとして動作するようになっています。 ルートには何の定義もないので、404エラーが買えるのでしょう。 > 8080じゃないポート番号に設定しても、eclipseからプログラムを実行すると8080のtomcatが起動するのでしょうか? 上述の通り、本体とは別にserver.xmlが作成されますから、本体のtomcatのserver.xmlを変えても意味がありません。 では、eclipseから起動するtomcatのポートを変更する方法があっても良さそうですが、探しきれませんでした。

infoplease
質問者

お礼

ありがとうございました。

infoplease
質問者

補足

再度の回答ありがとうございます。 >tomcat 2つ起動しているんですよ。 eclipseから起動したtomcat → 8080 素のtomcat → 別のポート番号 とすることで、競合が防げるということであれば、納得が行きます。 >上述の通り、本体とは別にserver.xmlが作成されますから、本体のtomcatのserver.xmlを変えても意味がありません。 >では、eclipseから起動するtomcatのポートを変更する方法があっても良さそうですが、探しきれませんでした。 以下のサイト http://blog.youria.jp/kyo/programinng/server-xml_when_boot_from_eclipse/ を参考に探してみたところ、私の設定の場合は、 pleiades\workspace\Servers\ローカル・ホスト の Tomcat8 (Java8)-config にある、server.xmlのポート番号を変更(例えば、8019に変更)すると、 eclipse実行時に表示されるブラウザのURL欄のURLが http://localhost:8019/プロジェクト名/クラス名 というように、その変更したポート番号(8019)になることを確認しました。 今回、以下のように、 ・サーブレット&JSPポケットリファレンス (tomcatの設定は、pp.23-25) ・10日でおぼえるJSP&サーブレット入門教室 第4版 (tomcatの設定は、pp.23-26) 2冊の本を購入したのですが、 eclipseを使用することは書かれていないようなので、 そのまま本に書かれているとおり、素直にtomcatの設定をしてしまうとエラーが出てしまうなと、今となっては思います。 いろいろ勉強になりました。 ありがとうございました。

その他の回答 (2)

  • tkf-
  • ベストアンサー率58% (821/1398)
回答No.3

eclipseのtomcatのポート変更、できるところがありました。 serviceのtomcatで右クリックopenすると、添付のような設定項目がありました。 試しに変えてみたら、内蔵ブラウザ?の方も変わったので、問題ないと思われます。 別途起動しているtomcatを停止してからお試しください。

infoplease
質問者

お礼

ありがとうございます。書き込みが入れ違いになってしまったようですね。 2番目の補足コメントで示したように、 私も自分で調べて、eclipse側のserver.xmlのポート番号を変更する方法を得ることができました。

  • tkf-
  • ベストアンサー率58% (821/1398)
回答No.1

> tomcatのポート番号が8080だと競合するので、別の番号に変えました。 tomcatのserver.xmlを変えたのですよね。 > その後、tomcatを起動した状態で、 これで、ポートを変更したtomcatが起動します。 > 上記サイトのプログラムを実行したところ、 上記サイトには、eclipse上からtomcatを起動するとありますね。ここで、8080のtomcatが起動します。そして、8080でサーブレットが動作するようになります。

infoplease
質問者

補足

ご回答ありがとうございます。また、ご説明が不足していて申し訳ありませんでした。 tomcatのserver.xmlでポート番号を変えました。 ポート番号変更後に、 localhost:8080 とブラウザのURL欄に打ち込むとエラーが出て、 localhost:(変更後のポート番号) と打ち込むと、tomcatのページが表示されます。 また、ポート番号変更後にeclipseでプログラムを実行したところ、 eclipseが有するブラウザが開き、 そのブラウザに、実行結果である「Hello, World!」が表示されます。 そのブラウザのURL欄に表示されるURLが http://localhost:8080/プロジェクト名/クラス名 となっています。 ちなみに、 http://localhost:8080/プロジェクト名/クラス名 をIEなどの通常のブラウザのURL欄にコピペしても、 同様に、「Hello, World!」が表示されます。 ポート番号を変更したのだから、 localhost:8080 と打ち込むとエラーが出て、 localhost:(変更後のポート番号) と打ち込むとtomcatのページが表示されるということ、すなわち、 変更後のポート番号のtomcatが起動するのは当然と思っています。 なので、プログラムの実行結果も、 http://localhost:(変更後のポート番号)/プロジェクト名/クラス名 となると予想していました。 しかし、相変わらず http://localhost:8080/プロジェクト名/クラス名 というふうに、8080になっています。ここに疑問を抱いております。 回答者様のご回答に 「eclipse上からtomcatを起動するとありますね。ここで、8080のtomcatが起動します。そして、8080でサーブレットが動作するようになります。」 とありますが、 8080じゃないポート番号に設定しても、eclipseからプログラムを実行すると8080のtomcatが起動するのでしょうか? 理解が足りず、うまく説明できていないかもしれませんが、 またご回答いただけると幸いです。

関連するQ&A