我想以的身份执行我的网络应用http://localhost
。
我想以的身份执行我的网络应用http://localhost
。
Answers:
1)转到conf
tomcat安装目录中的文件夹
e.g. C:\Tomcat 6.0\conf\
2)在文件中编辑以下标签server.xml
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
3)将port=8080
值更改为port=80
4)保存文件。
5)停止Tomcat并重新启动。
etc/default/tomcat7
设置AUTHBIND=yes
,以避免端口80上PermissionDenied错误
Amazon EC2中的Ubuntu 14.04 LTS。 以下步骤为我解决了此问题:
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
authbind
,仅添加设置。
在基于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
这三个步骤都是必需的。
我尝试将端口从更改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
由于以前的答案在14.04 Ubuntu Server上对我来说效果不佳(虽然不错,但还不够),所以我提到了这些建议(这是引号)。
编辑:请注意,正如@ jason-faust 在14.04authbind
的注释中提到的那样,它附带的软件包现在确实支持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上
4)/etc/init.d/xinetd启动
如果有人在寻找,请按照以下步骤在Eclipse IDE用户中更改tomcat端口号。
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 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
只是tomcat的conf文件夹
打开server.xml文件
转到连接器节点之一,如下所示
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
只需更改端口
保存并重启tomcat