首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux上配置web服务器端口

问Linux上配置web服务器端口
EN

Stack Overflow用户
提问于 2014-07-14 09:51:30
回答 2查看 495关注 0票数 0

我正在Linux上运行Play Framework,目前URL是

代码语言:javascript
复制
http://www.example.net:9999 

我怎么把它改到

代码语言:javascript
复制
http://www.example.net

我还想运行ssh端口。

代码语言:javascript
复制
http://www.example.net:9443 

这是linux配置还是在web服务器上?如果它的linux有任何相关链接将是有帮助的。

下面的更新我意识到,默认情况下,如果您将ssh的端口设置为443,那么您将自动获得url。

代码语言:javascript
复制
https://www.example.net

这相当于

代码语言:javascript
复制
https://www.example.net:443

然而,这在我的ec2实例上仍然不起作用。经过一些调查、试验和错误之后,我发现如果我用root启动了我的web服务器,那么这个端口就可以使用并工作了。所以现在我只需要弄清楚权限。

所以答案是

您需要成为根用户(超级用户)才能绑定到1024以下的端口。这就是为什么9443有效,但443不起作用

因此,我的问题仍然是如何使用端口9443运行,但下面有一个url,是否可以将webserver作为root运行,这似乎不对。

代码语言:javascript
复制
https://www.example.net

编辑2:答案是,您需要重新映射IP表中的端口。

代码语言:javascript
复制
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
EN

回答 2

Stack Overflow用户

发布于 2014-07-14 10:05:26

虽然你的问题很广泛..。我猜你有两种可能的解决方案:

  1. 使用端口80启动应用程序--如果可用的话
  2. 如果您有一些通用的web服务器在端口80上工作(并希望保留它),则需要将其配置为作为前端HTTP服务器,如文档中所述工作。
票数 1
EN

Stack Overflow用户

发布于 2014-07-14 13:36:33

为了使用端口9443而不是默认的ssl端口443,您需要成为根用户或超级用户,您需要重新映射iptables中的端口

对于播放框架,默认端口是9000,而不是80或8080,因此您需要重新映射

代码语言:javascript
复制
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80  -j REDIRECT --to-port 9000

对于ssl端口,需要从443映射到9443,所以

代码语言:javascript
复制
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 9443
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24733783

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档