質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

servlet

Servletとは、Webページの動的な生成やデータ処理などをサーバ上で実行するために、Javaで作成されたプログラムです。 ショッピングサイトやオンラインバンキングといった、動的なウェブサイトの構築に用いられています。

Q&A

解決済

1回答

3758閲覧

Amazon LinuxでのTomcatでwgetしようとすると404が返ってくる

arcanum_jp

総合スコア94

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

servlet

Servletとは、Webページの動的な生成やデータ処理などをサーバ上で実行するために、Javaで作成されたプログラムです。 ショッピングサイトやオンラインバンキングといった、動的なウェブサイトの構築に用いられています。

0グッド

0クリップ

投稿2018/11/05 23:55

編集2018/11/06 10:17

こんにちは、AWS上にAmazon Linuxのインスタンスを作成し、デフォルトのec2-user上からそこにTomcatをインストールしました。ownerはroot:tomcatになっています。

server.xmlでAppBaseがwebappsであることを確認したので、内容は何もいじらず{TOMCATのルートディレクトリ}/webappsを作成し、その中に、とりあえずtestappというディレクトリを作成しました。確認用にindex.htmlを作成し、中に任意のHTML文書を入れています

ディレクトリ構成はこのような感じです

{TOMCATのルートディレクトリ}
+/webapps
+/testapp
+index.html

index.htmlの内容は以下です

<h1>Do yo see this??</h1> <br> test!!!!!

作成したEC2インスタンスにコンソールでログインしTomcatを起動し、起動確認に、そのコンソール上から以下のコマンドで接続の確認をしたのですが、、、

wget http://localhost:8080/testapp/index.html

以下に示すように接続はできるが404が返ってきてしまっています。

--2018-11-05 23:35:05-- http://localhost:8080/testapp/index.html
localhost (localhost) をDNSに問いあわせています... 127.0.0.1
localhost (localhost)|127.0.0.1|:8080 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 404 Not Found
2018-11-05 23:35:05 エラー 404: Not Found。

ルートに接続しても同じです

wget http://localhost:8080
--2018-11-06 00:03:48-- http://localhost:8080/
localhost (localhost) をDNSに問いあわせています... 127.0.0.1
localhost (localhost)|127.0.0.1|:8080 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 404 Not Found
2018-11-06 00:03:48 エラー 404: Not Found。

Tomcatが起動していないのかと思い、sudo /etc/init.d/tomcat7 restartをしても同じでした

Webアプリケーションを配置する際はwarなり、web.xmlなりが無いととダメでしょうか?
漠然とした質問で申し訳ないのですが、原因がわからず困っています。

追記:

上記のインストールでは、yum -y install tomcat7と行いました。ためしにインストール方法を、
yum -y install tomcat7-webapps としたところ、以下のようにとりあえず何かは取得できているようです。

wget http://localhost:8080
--2018-11-06 10:12:46-- http://localhost:8080/
localhost (localhost) をDNSに問いあわせています... 127.0.0.1
localhost (localhost)|127.0.0.1|:8080 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 特定できません [text/html]
index.html: 許可がありません

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2018/11/06 00:01

warはあくまでデプロイのためのファイル群でTOMCAT起動でwebapps配下に配置されてその後は実際のアクセスには使われないものなので、あまり関係はないかと。Java自体を動かしたいわけじゃないですよね?index.htmlには何が書いてあるのでしょうか。
arcanum_jp

2018/11/06 00:07

ありがとうございます。アクセスについては上記に追記しましたようにTomcatを入れたサーバーにログインしてのwgetなのでlocalhostで良いかとおもっていました。
guest

回答1

0

ベストアンサー

TomcatでWebアプリケーションをデプロイして表示したい場合は作法に従ってweb.xmlが必要です。
Webアプリの中身が静的ファイルでも必要です。
Webアプリでなくても良ければ、server.xmlにContext指定で静的ファイルをサーブできます。

静的ファイルだけおきたい場合はアプリケーションサーバーではなくWebサーバーを利用すれば簡単に静的ファイルをサーブできます。

投稿2018/11/06 00:29

moonphase

総合スコア6621

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

arcanum_jp

2018/11/07 13:44

ありがとうございます。参考にします
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問