buntuガイド に従ってTomcat 7をインストールしました。サーバーは動作しており、「動作します!」 http://localhost:8080/
のページ。
次に、Netbeansを使用して独自のwebappをセットアップします。 Java EE 6およびTomcat 7で新しいWeb Projectを生成しました。ユーザーは/var/lib/Tomcat7/conf/Tomcat-users.xml
ファイルが適切に構成されています。
プロジェクトを実行するとすべてが問題ないように見えますが、ブラウザを開くと 500エラー と表示されます。
ファイルの許可:
lucio@lucio-pc:/$ ll /var/lib/Tomcat7/logs
lrwxrwxrwx 1 root root 17 jul 24 18:07 /var/lib/Tomcat7/logs -> ../../log/Tomcat7/
lucio@lucio-pc:/$ ll /var/log/Tomcat7/
total 136
drwxr-x--- 2 Tomcat7 adm 4096 ago 28 10:50 ./
drwxrwxr-x 15 root syslog 4096 ago 28 09:29 ../
-rw-r--r-- 1 Tomcat7 Tomcat7 800 ago 26 17:23 catalina.2014-08-26.log.gz
-rw-r--r-- 1 Tomcat7 Tomcat7 5173 ago 27 21:59 catalina.2014-08-27.log
-rw-r--r-- 1 Tomcat7 Tomcat7 31285 ago 28 10:36 catalina.2014-08-28.log
-rw-r--r-- 1 Tomcat7 root 44192 ago 28 10:36 catalina.out
-rw-r--r-- 1 Tomcat7 Tomcat7 45 ago 26 16:19 localhost.2014-08-26.log.gz
-rw-r--r-- 1 Tomcat7 Tomcat7 0 ago 27 11:15 localhost.2014-08-27.log
-rw-r--r-- 1 Tomcat7 Tomcat7 433 ago 28 09:49 localhost.2014-08-28.log
-rw-r--r-- 1 Tomcat7 Tomcat7 7435 ago 26 17:23 localhost_access_log.2014-08-26.txt
-rw-r--r-- 1 Tomcat7 Tomcat7 0 ago 27 11:15 localhost_access_log.2014-08-27.txt
-rw-r--r-- 1 Tomcat7 Tomcat7 15186 ago 28 09:58 localhost_access_log.2014-08-28.txt
ファイルにアクセスできない理由がわかりません。ユーザーとグループTomcat7
にファイルへのアクセス許可があることがわかります。ファイルに対する特権を必要とするJVMのユーザーはいますか?
前述のようにファイルの所有権を変更しようとしました here ですが、まったく変更されません。
/etc/default/Tomcat7
ファイルには以下が含まれます。
Tomcat7_USER=Tomcat7
Tomcat7_GROUP=Tomcat7
だから、Tomcat7
ユーザーとして実行されていると思います。
ユーザーをTomcat7
グループに追加しました:
Sudo usermod -aG Tomcat7 $USER
そして、マシンを再起動しましたが、問題は解決しません。
ここで2つの問題に気付きました。
エラーログの2行が目立ちました。
SEVERE: Cannot find specified temporary folder at /var/lib/Tomcat7/temp
そして:
Java.io.FileNotFoundException: /var/lib/Tomcat7/conf/Tomcat-users.xml (Permission denied)
Lucioで少し診断して 、Tomcat-users.xml
ファイルはTomcatが所有しているのではなく、root
が所有していることがわかりました。次のコマンドを実行して、許可を適切なものに変更します。
Sudo chown Tomcat7:Tomcat7 /var/lib/Tomcat7/conf/Tomcat-users.xml
また、次のように、Tomcat権限で/var/lib/Tomcat7/temp
フォルダーを作成します。
Sudo mkdir /var/lib/Tomcat7/temp && Sudo chown -R Tomcat7:Tomcat7 /var/lib/Tomcat7/temp
最後に、/var/lib/Tomcat7/logs
ユーザー/グループがTomcat7
を所有することにより、ログを修正する必要があります。 /var/log/Tomcat7/
は、Tomcat7
ユーザーANDグループによっても所有される必要があります。