nginx 怎么监听端口范围

2015-09-12 17:01:56 +08:00
 holinhot

比如监听 1000~5000
nginx listen port range

5980 次点击
所在节点    问与答
10 条回复
Aliencn
2015-09-12 18:53:24 +08:00
写 4001 行 listen
lshero
2015-09-12 18:55:35 +08:00
路由器或者 iptables 做端口映射
willis
2015-09-12 20:01:00 +08:00
iptables -t nat -A PREROUTING -m multiport -p tcp --dports 1000 : 5000 -j REDIRECT --to-ports 80
iptables -t nat -A OUTPUT -m multiport -p tcp --dports 1000 : 5000 -j REDIRECT --to-ports 80

没测试,不一定对,大概就是这么写的
holinhot
2015-09-12 20:13:10 +08:00
@willis 端口转发不行啊。这样我在程序上就不能 if 域名了
holinhot
2015-09-12 20:13:39 +08:00
@Aliencn 按这样 就玩死了
chyang
2015-09-12 20:32:26 +08:00
很好奇,为啥要这样做?
gamexg
2015-09-12 20:34:20 +08:00
监听 4000 个端口,性能会悲剧到什么程度?
auser
2015-09-12 22:43:49 +08:00
@gamexg

为什么会觉得性能有问题?
难道 accept 的时候是费睡眠等待的吗?
nginx 用的 epoll ,也就 4K 个文件描述符而已。


@holinhot

ngx_connection.c:364 ngx_open_listening_sockets
直接改代码好了 如果想用配置项的话 直接加一个就是
holinhot
2015-09-12 22:50:04 +08:00
@auser 这个 nginx 是 windows 版本不好修改啊 要是 linux 就容易
holinhot
2015-09-12 22:54:54 +08:00
@Aliencn 要是 10 个 IP 每个 IP 监听 5w 个端口是不是要写 50w 行

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/220196

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX