Tomcat 6.0.39がインストールされたRedhat Linuxサーバーがあります。 Webアプリケーションをデプロイしてサーバーを公開する前に、ポート80にバインドされたTomcatユーザーを使用してTomcat起動スクリプトを実行する方法を理解したいと思います。
これまで私がしたことは次のとおりです。
- 私のserver.xmlで、ポート8080 - > 80 - > 443を変更します。
- Tomcatディレクトリは私のTomcatユーザーが所有しています。
- 認証バインドがインストールされました。
- /etc/authbind/byportの下に80,443という2つのファイルを作成して実行可能にし、所有者をtomcatに変更しました。
Startup.sh 内で (exec "$PGDIR"/"$EXECUTABLE" start "$@") を ("exec authbind --deep "$PGDIR"/"$EXECUTABLE" start "$@") に変更しました。
この手順に従った後でも(ほとんどの記事で指示されているのとほぼ同じです)、Tomcatを起動するとポート80、443をバインドできないと不平を言って、まだ拒否メッセージが表示されます。
あなたが提供できるどんな助けにも感謝します。ありがとうございます!
答え1
役に立つかもしれないいくつかの異なるステップが見つかりました。
- 認証バインディングのインストール
ポート 80 を有効にします
authbind
(root ユーザーである必要があります)。$ sudo touch /etc/authbind/byport/80 $ sudo chmod 500 /etc/authbind/byport/80 $ sudo chown glassfish /etc/authbind/byport/80
IPv4をデフォルト値に設定します(
authbind
IPv6は現在サポートされていません)。これを行うには、TOMCAT/bin/setenv.sh
次の内容を含むファイルを作成します。CATALINA_OPTS="-Djava.net.preferIPv4Stack=true"
変化
startup.sh
exec authbind --deep "$PRGDIR"/"$EXECUTABLE" start "$@" # OLD: exec "$PRGDIR"/"$EXECUTABLE" start "$@"