我在Linux上运行Play Framework,目前URL是
http://www.example.net:9999
如何将其更改为
http://www.example.net
我也想运行一个ssh端口
http://www.example.net:9443
这是linux配置还是在Web服务器上? 如果它的linux任何相关的链接会有所帮助。
UPDATE 按照下面的biesiors回答,我意识到默认情况下,如果你为ssh设置端口为443,那么你会自动获得网址
https://www.example.net
相当于
https://www.example.net:443
然而,这仍然不适用于我的ec2实例。经过一些调查和反复试验,我发现如果我用root启动我的Web服务器,那么这个端口就可以使用了。所以现在我只需要弄清楚权限。
所以答案是
你需要root(超级用户)绑定到1024以下的端口。这就是为什么9443有效,但443没有
所以我的问题仍然是我如何使用端口9443运行,但是下面有url并且可以以root身份运行web服务器,它似乎不对
https://www.example.net
编辑2: 所以答案是你需要重新映射IP表中的端口
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 9000
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 9443
答案 0 :(得分:1)
虽然你的问题非常广泛......我猜你有两个可能的解决方案:
80
启动您的应用程序 - 如果可用答案 1 :(得分:0)
为了使用端口9443而不是您需要为root用户或超级用户的默认ssl端口443,您需要重新映射iptables中的端口
对于playframework,默认端口为9000而不是80或8080,因此您需要重新映射
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 9000
对于ssl端口,您需要从443映射到9443,所以
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 9443