私は自分のWebアプリをhttp://localhost
として実行したいです。
1)Tomcatインストールディレクトリのconf
フォルダに移動します
e.g. C:\Tomcat 6.0\conf\
2)server.xml
fileの以下のタグを編集
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
3)port=8080
の値をport=80
に変更します
4)ファイルを保存してください。
5)Tomcatを停止して再起動します。
buntu 14.04 LTS、Amazon EC2にあります。以下の手順で、この問題を解決しました。
1. server.xmlを編集して、port = "8080"を "80"に変更します。
Sudo vi /var/lib/Tomcat7/conf/server.xml
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
2. Tomcat7ファイルを編集します
Sudo vi /etc/default/Tomcat7
コメントを外し、#AUTHBIND = noをyesに変更します。
3. authbindをインストールする
Sudo apt-get install authbind
4.以下のコマンドを実行して、Tomcat 7にポート80でread + executeを実行させます。
Sudo touch /etc/authbind/byport/80
Sudo chmod 500 /etc/authbind/byport/80
Sudo chown Tomcat7 /etc/authbind/byport/80
5. Tomcatを再起動します。
Sudo /etc/init.d/Tomcat7 restart
Linux Debianベース(Ubuntuも含む)では、/etc/default/Tomcat7
に行き、#AUTHBIND=no
行のコメントを外し、その値を 'yes'に設定してサーバーを特権ポートにバインドさせる必要があります。
UbuntuとDebianシステムでは、いくつかのステップが必要です。
Server.xmlで、行<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
をport="80"
に変更します。
次のようなコマンドで、推奨される(必須ではない)authbindパッケージをインストールします。
Sudo apt-get install authbind
次のような行をコメント解除して設定することにより、server.xmlファイル(/etc/Tomcat6
または/etc/Tomcat7
)でauthbindを有効にします。
AUTHBIND=yes
3つのステップすべてが必要です。
8080
で80
からserver.xml
にポートを変更しようとしましたが、うまくいきませんでした。それから私は代替案を見つけ、パフォーマンスに影響があると確信しているiptables
を更新します。
私は以下のコマンドを使います。
Sudo /sbin/iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
Sudo /sbin/service iptables save
http://www.excelsior-usa.com/articles/Tomcat-Amazon-ec2-advanced.html#port8
14.04のUbuntuサーバでは、以前の答えはうまくいきませんでした(それは良かったが十分ではありませんでした)ので、 これらの推奨 (これは引用です)と述べました。
編集:@ jason-faustが14.04のコメントで述べているように、同梱されているauthbind
パッケージは現在IPv6をサポートしているので、好ましいIPv4のものはもはや必要ない.
1) Install authbind
2) Make port 80 available to authbind (you need to be root):
touch /etc/authbind/byport/80
chmod 500 /etc/authbind/byport/80
chown Tomcat7 /etc/authbind/byport/80
3) Make IPv4 the default (authbind does not currently support IPv6).
To do so, create the file Tomcat/bin/setenv.sh with the following content:
CATALINA_OPTS="-Djava.net.preferIPv4Stack=true"
4) Change /usr/share/Tomcat7/bin/startup.sh
exec authbind --deep "$PRGDIR"/"$EXECUTABLE" start "$@"
# OLD: exec "$PRGDIR"/"$EXECUTABLE" start "$@"
setenv.sh
に/usr/share/Tomcat7/bin
のCATALINA_OPTS
ファイルが既にある場合は、次のようにします。
export CATALINA_OPTS="$CATALINA_OPTS -Djava.net.preferIPv4Stack=true"
これで、他の回答で説明されているように、ポートを80
に変更できます。
現代のLinuxでは(私にとって)最善の方法はxinetdを使うことです:
1)/etc/xinet.d/Tomcat-httpを作成します
service http
{
disable = no
socket_type = stream
user = root
wait = no
redirect = 127.0.0.1 8080
}
2)/etc/xinet.d/Tomcat-httpsを作成します
service https
{
disable = no
socket_type = stream
user = root
wait = no
redirect = 127.0.0.1 8443
}
3)chkconfig xinetd on
4)/etc/init.d/xinetd start
誰かが探しているのであれば、Eclipse IDE userでTomcatのポート番号を変更する方法は次のとおりです。
3.右側の表にポート番号が表示されていることを確認します。クリックして編集します。例えば:
4.これでHTTPのポート番号が8080から80に変わります。Ctrl + Sを押して変更を保存し、サーバーを再起動します。コンソールビューでポート番号の変更を確認できます。
この内容はすべてリンクの下から取られたものです。詳しい情報についてはそのリンクを参照してください。 http://www.codejava.net/servers/Tomcat/how-to-change-port-numbers-for-Tomcat-in-Eclipse
以下のコマンドを実行するとうまくいきました。 server.xmlとconfファイルを変更しようとしましたが、どちらもうまくいきませんでした。
/ sbin/iptables -A入力-i eth0 -p tcp --dport 80 -j ACCEPT
/ sbin/iptables -A入力-i eth0 -p tcp --dport 8080 -j ACCEPT
/ sbin/iptables -A事前設定-t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
eclipseを使用していてserver.xmlを変更してもうまくいかない場合は、 article ..に従ってください。EclipseのようにIDEを使用している場合は、ポートを変更する手順があります。
Tomcatのconfフォルダにそのまま進む
server.xmlファイルを開く
次のように見えるコネクタノードの1つに移動
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
単にポートを変更する
tomcatを保存して再起動します
手順は次のとおりです。
- >パスをたどります:{Tomcat directory>/conf - >この行を見つけてください
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
ポート番号を「8080」から「80」に変更します。
- >ファイルを保存してください。
- >サーバーを再起動します。
Linuxサーバでは、次のコマンドを使ってTomcatがポート80でリッスンするように再設定できます。
sed -i 's|port="8080"|port="80"|g' /etc/tomcat?/server.xml
sed -i 's|#AUTHBIND=no|AUTHBIND=yes|g' /etc/default/tomcat?
service Tomcat8 restart
ファイルを編集することを忘れないでください。ファイル/etc/default/Tomcat7
を開き、変更します
#AUTHBIND=no
に
AUTHBIND=yes
その後再起動してください。