我有一个带有example.com域名的VPS服务器,带有apache2监听端口80
然后,我在jetty服务器上有一个web应用程序(使用mvn jetty:run运行),在端口8080中监听
当我在浏览器中输入example.com时,我得到一个apache示例页面“它可以工作!” 如果我写example.com:8080我得到我的webapp
问题很简单,我在编写example.com时如何重定向以便进入我的webapp?
我无法将端口码头更改为80,错误。 命令“sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080”没有任何影响
那么,我如何让apache重定向80到8080?在sites-enabled / default-000?
中请仔细解释,我是系统的新手;(
谢谢
修改
我解决了这个问题:
http://czetsuya-tech.blogspot.com.es/2012/07/how-to-port-forward-apaches-80-to.html#.VImt1XvyOPU
但最后一行:
RewriteRule ^ /(。*)......:8080 / 0,81€[P,L]
重启apache时出错 我删除它并正常工作。这有什么问题吗?什么是RewriteRule?
答案 0 :(得分:0)
使用IPTABLES是一种可能的解决方案。我对IPTABLES知之甚少 - 但是有很多教程,比如这个:http://proghowto.com/iptables-redirect-port-80-to-port-8080
如果你在目标端口上有一个正在运行的守护进程(apache),我不知道这是否有效。
另一种解决方案是在apache中使用代理模块将请求传递到您的webapp。在Linux上,只允许root用户使用1000以下的端口。在Windows上,您应该只需更改jetty配置中的端口。
我经常使用两个教程,它们适用于apache和tomcat,但这对apache方面没有任何影响:
这是一个非常常见的设置。由于代理,几乎没有性能影响。并非用户会注意到任何事情。