GNU/Linux >> Linux の 問題 >  >> Linux

Tomcat がポート 8080 で動作するのに 80 で動作しないのはなぜですか?

2 つの典型的な理由:

  • 1024 未満のポートをリッスンする権限がない可能性があります (通常、root などの管理者権限が必要です) )
  • 他の何かがポート 80 で既にリッスンしている可能性があります (例:apache)

/etc/default/tomcat6 に移動して #AUTHBIND=no を変更します AUTHBIND=yes まで

 # If you run Tomcat on port numbers that are all higher than 1023, then you
 # do not need authbind.  It is used for binding Tomcat to lower port numbers.
 # NOTE: authbind works only with IPv4.  Do not enable it when using IPv6.
 # (yes/no, default: no)
 #AUTHBIND=no

前にコメントしたことが何も機能しない場合 (私に起こったように)、ポート 80 からトラフィックを送信できます。 8080 へ .

それを行うには:

http://forum.slicehost.com/index.php?p=/discussion/2497/iptables-redirect-port-80-to-port-8080/p1

簡単に言うと、ターミナルで次の 3 つのコマンドを入力します。

$ sudo iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
$ sudo iptables -A INPUT -i eth0 -p tcp --dport 8080 -j ACCEPT
$ sudo iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080 

Linux
  1. 正規表現がXで機能するのに、Yでは機能しないのはなぜですか?

  2. 一部のコマンドでBashプロセス置換が機能しないのはなぜですか?

  3. Avconvを使用したメタデータのマッピングが機能しませんか?

  1. これが「読み取り中」にターミナルで機能するのに、シェルスクリプトでは機能しないのはなぜですか?

  2. なぜ`exit&`が機能しないのですか?

  3. find -exec mv {} ./target/ + が機能しないのはなぜですか?

  1. Linux –Setuidが機能しないのはなぜですか??

  2. Tomcat は実行中ですが、8080 ポートが応答しません

  3. この正規表現が Linux で機能しないのはなぜですか?