首先,我只是想看到它不在ec2控制台安全组安装。因为我可以设置apache,这是通过故障80端口,并能够通过80端口访问Apache网站。 但是对于tomcat它可以工作,如果我使用端口8080(默认)或一些大于1023的值(我认为这个端口)。但是当我改变server.xml(改变8080到80),它不能工作,如果我使用80端口,我成功启动服务,但没有80/HTTP监听。我知道它应该是一些特权问题(只有根可以启动1023端口以下的服务)。但我不知道该怎么做。Linux中的EC2(亚马逊)不能使用端口80的tomcat
11
A
回答
1
25
我个人对此问题的选择是使用iptables
将所有通信从端口80重定向到Tomcat运行的上端口(例如8080)。
/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
+0
这是正确的答案。它只是通过端口80将流量重定向到8080,而不会限制出站流量。一些像这样的iptable脚本阻止了http出于安全考虑,但是这使得在今天更新你的服务器非常困难。 – chubbsondubs
+0
[“云中的猫”](http://www.excelsior-usa.com/articles/tomcat-amazon-ec2-advanced.html)文章介绍了几条建议,截至2012年,他们似乎更喜欢' iptables“。 – amos
2
我之前做过这个的方式是使用Apache2作为代理,使用虚拟主机和代理到Tomcat上。这将处理请求,然后也可以用作负载均衡器,如果将来您决定使用多个Tomcat进行负载均衡。
相关问题
- 1. 亚马逊ec2服务(linux)Tomcat不能使用端口80
- 2. 打开端口80 EC2亚马逊网络服务
- 3. 亚马逊EC2 Linux实例中的GUI
- 4. 亚马逊AWS EC2使用
- 5. 亚马逊EC2的用途
- 6. 与亚马逊EC2
- 7. 使用的CloudFlare与亚马逊EC2
- 8. Rest客户端Android与亚马逊EC2
- 9. 无法在亚马逊ec2 linux服务器中使用imagecopyresized
- 10. 亚马逊AWS(EC2/S3)是否启用了端口2195?
- 11. 编译Fsharp使用Mono亚马逊EC2
- 12. 使用亚马逊EC2服务
- 13. 使用亚马逊Ec2与S3
- 14. 亚马逊EC2和jbossws
- 15. 亚马逊EC2实例
- 16. 原型为亚马逊Ec2
- 17. 亚马逊EC2和S3
- 18. 亚马逊AWS Ec2 + Elastic IP
- 19. EC2亚马逊TCPS问题
- 20. 部署到亚马逊EC2
- 21. EntityFramework与亚马逊EC2
- 22. 关于亚马逊AWS EC2
- 23. 芹菜&亚马逊ec2
- 24. 亚马逊EC2元数据
- 25. EC2到S3 - 亚马逊
- 26. Facebook appid亚马逊ec2
- 27. 亚马逊EC2账单API?
- 28. Amazon EC2与亚马逊EMR
- 29. 亚马逊EC2根登录
- 30. Rails的教程端口亚马逊dynamodb
[EC2中的Linux不能使用tomcat的端口80,但端口80对于Apache是可以的](http://stackoverflow.com/questions/12464888/linux-in-ec2-cannot-use-port-80 -for-tomcat-but-port-80-is-ok-for-apache) –