如何将Tomcat的端口从8080改为80?

问题描述 投票:0回答:14

我想将我的网络应用程序执行为

http://localhost

tomcat tomcat6
14个回答
218
投票

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 并重新启动它。


121
投票

Ubuntu 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. 运行以下命令以在端口 80 上提供 tomcat7 读取+执行。

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

108
投票

在基于 Linux Debian 的系统上(包括 Ubuntu),您还必须转到

/etc/default/tomcat7
,取消注释
#AUTHBIND=no
行并将其值设置为“yes”,以便让服务器绑定在特权端口上。


29
投票

在 Ubuntu 和 Debian 系统上,需要执行以下几个步骤:

  1. 在 server.xml 中,将行

    <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
    更改为
    port="80"

  2. 安装推荐(非必需)的 authbind 软件包,使用如下命令:

    sudo apt-get install authbind

  3. 通过取消注释并设置以下行,在 server.xml 文件(在

    /etc/tomcat6
    /etc/tomcat7
    中)启用 authbind:

    AUTHBIND=yes

这三个步骤都是必需的。


23
投票

我尝试将

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#port80


20
投票

由于之前的答案对我在 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
,如其他答案中所述。


5
投票

在现代 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 启动


5
投票

如果有人正在寻找,如何在 Eclipse IDE 用户中更改 tomcat 端口号,步骤如下。

1.在服务器视图中,双击服务器名称:

2.这将打开Tomcat的配置页面,如下所示:

3.注意端口号显示在右表中。点击编辑,例如:

4.这会将 HTTP 端口号从 8080 更改为 80。按 Ctrl + S 保存更改并重新启动服务器。我们可以在控制台视图中发现端口号的变化:

所有内容均来自以下链接,请参阅该链接以获取更多信息,谢谢。 http://www.codejava.net/servers/tomcat/how-to-change-port-numbers-for-tomcat-in-eclipse


4
投票

运行下面的命令可以正常工作。尝试更改

server.xml
和 conf 文件,但都不起作用。

/sbin/iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT

/sbin/iptables -A INPUT -i eth0 -p tcp --dport 8080 -j ACCEPT

/sbin/iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080

3
投票

在 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

2
投票

如果您使用的是 Eclipse 并且修改 server.xml 对您不起作用,请尝试以下文章..如果您使用的是 Eclipse 等 IDE,他们有修改端口的步骤。


1
投票

只需进入tomcat的conf文件夹

打开server.xml文件

转到如下所示的连接器节点之一

<Connector port="8080" protocol="HTTP/1.1" 
           connectionTimeout="20000" 
           redirectPort="8443" />

只需更改端口即可

保存并重启tomcat


1
投票

步骤如下:

--> 遵循路径:{tomcat目录>/conf -->找到这一行:

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

将端口号从“8080”更改为“80”。

--> 保存文件。

--> 重新启动服务器 :)


0
投票

不要忘记编辑文件。打开文件

/etc/default/tomcat7
并更改

#AUTHBIND=no

AUTHBIND=yes

然后重新启动。

© www.soinside.com 2019 - 2024. All rights reserved.