| 2022-06-1
但我们知道服务器上的一个端口只能被一个程序使用,这时候如何该怎么办呢?一个常用的方法是用 nginx端口转发。Nginx 的实现原理是:用 Nginx 监听 80 端口,当有 HTTP 请求到来时,将 HTTP 请求的 HOST 等信息与其配置文件进行匹配并转发给对应的应用。
例如当用户访问 book(.)douban(.)com 时,Nginx 从配置文件中知道这个是图书应用的 HTTP 请求,于是将此请求转发给 8001 端口的应用处理。当用户访问 movie(.)douban(.)com 时,Nginx 从配置文件中知道这个是电影应用的 HTTP 请求,于是将此请求转发给 8002 端口的应用处理。
有时我们会使用一些java或node应用,但又不想让他们直接监听80端口,这时就需要用到端口转发
本文中,我们介绍Nginx如何做端口转发,还有各种转发规则
将域名转发到本地端口
首先介绍最常用的,将域名转发到本地另一个端口上
这样访问 http://tomcat(.)shaochenfeng(.)com 时就会转发到本地的 8080 端口
将域名转发到另一个域名
这样访问 http://baidu(.)shaochenfeng(.)com 时就会转发到 http://www.baidu(.)com
本地一个端口转发到另一个端口或另一个域名
这样访问 http://127.0.0.1 时就会转发到本地的 8080 端口或 http://www.baidu(.)com
加 / 与不加 /
在配置proxy_pass代理转发时,如果后面的url加/,表示绝对根路径;如果没有/,表示相对路径
例如
访问 http://shaochenfeng(.)com/data/index(.)html 会转发到
http://127.0.0.1/index(.)html
不加 /
访问 http://shaochenfeng(.)com/data/index(.)html 会转发到
http://127.0.0.1/data/index(.)html
好用的端口转发工具,小编推荐花生壳。
1.首先下载新花生壳后,输入用户名密码登录。
2.双击你想映射的域名,进入花生壳端口映射添加界面,点击打开内网映射。
3.应用名称可以随便填个好记的,内网主机就是你想被公网访问的那台电脑IP地址,内网端口就是希望被映射的端口。
4.现在端口映射窗口就会添加一条映射记录,此时,公网只要使用花生壳分配的这个域名+端口,就可以访问内网的主机了。
举个栗子,你妈妈要到学校给你送旺仔牛奶,只知道你在三年级2班,不知道你在学校那栋楼那个教室,这时候就需要学校门卫告诉你妈妈,你的班级在A栋5楼之后,你才能收到旺仔牛奶。如果你想很多人都给你送旺仔牛奶,但保安会嫌麻烦就不给再他们指路了。但是你还想要牛奶怎么办?一、是买通门卫(价格昂贵);二、是在校门口弄个牌子(花生壳)上面写着你教室位置,你成本将大大降低。
总的来说花生壳可以使设备在内网或者没有固定/公网IP,也能轻松通过公网访问。
体验环境:
花生壳软件版本:101.81.123.144
电脑操作系统:Windows10
测试账号级别:个人专业版(含内网穿透)
了解了nginx端口转发的相关问题。我们可以看到花生壳内置内网穿透功能,可根据实际的网络环境,通过花生壳软件或者路由器设置端口映射来搭建一条直接和设备建立连接的通道,而且不受其他平台制约,不存储数据,其稳定性和可靠性都非常高,可以为用户带来安全、可行的智能居管理方案,帮助人们实现智能化的应用体验。