使用Nginx和cpolar实现内网穿透多个Windows Web站点端口
一. 下载 windows 版 Nginx
进入官方网站下载 windows 版的 nginx
下载好后解压进入 nginx 目录双击 Nginx.exe 即可运行。
打开浏览器输入 http://localhost,nginx 默认使用 80 端口,所以无需加端口号。出现 nginx 欢迎页面表示启动成功。
二. 配置 Nginx
在 8086 和 9999 端口分别配置两个 web 服务,这里不详细说如何搭建 web 站点服务,具体的网上详细教程很多,大家自行搜索。
站点搭建好后,接下来需要修改 nginx.conf 配置文件,打开 nginx 目录,找到 conf 文件夹下面的nginx.conf
。
编辑文件,这里使用 notepad++进行编辑,添加如下信息:
location ^~ /webs/ { proxy_pass http://127.0.0.1:8086/; } location ^~ /webc/ { proxy_pass http://127.0.0.1:9999/; }
参数简介(详情请看官方文档):
- ^~ : 表示开头对 URL 路径进行前缀匹配,并且在正则之前
- proxy_pass: 代理的服务地址
编辑完保存,打开 cmd 窗口,进入 nginx 目录,执行如下命令重启:
nginx.exe -s reload
三. 测试局域网访问
重启后 Nginx 后,打开浏览器,以 80 端口加上在配置文件中配置的 location 代理转发规则进行访问两个站点:
四. cpolar 内网穿透
接下来,我们通过强大的且稳定的内网穿透工具 cpolar,将本地 nginx 服务暴露至公网环境,以实现穿透多个站点端口需求,无需公网 IP,也不用设置路由器。
cpolar 官网:链接
打开 cpolar 官网,下载 cpolar 并安装。安装完成后,在浏览器上访问本地 9200 端口【http://localhost:9200/】,登录进入 cpolar web ui 管理界面。
点击左侧的隧道管理——创建隧道:
- 隧道名称:可自定义,注意不要与已有的隧道名称重复
- 协议:http 协议
- 本地地址:80
- 域名类型:免费选择随机域名
- 地区:选择 china vip
点击创建
隧道创建成功后,点击左侧的状态——在线隧道列表,可以看到已经有生成了相应的公网地址,将其复制下来。
五. 测试公网访问
打开浏览器,使用cpolar 所生成的公网地址+在配置文件中配置的 location 代理转发规则
来访问两个站点,测试访问成功。
六. 配置固定二级子域名
由于以上使用的 cpolar 所生成的公网地址为随机临时地址,24 小时内会随机变化,我们可以为其配置固定的二级子域名。
注意,配置固定二级子域名需要将 cpolar 套餐升级至基础套餐或以上。
进入 cpolar 官网并登录进入后台界面,点击左侧的预留,找到保留二级子域名:
- 地区:选择 China
- 二级域名:可自定义
- 描述:即备注,可自定义
二级子域名保留成功后,将其复制下来
访问 http://127.0.0.1:9200/登录 cpolar web UI 管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑
修改隧道信息,将保留成功的二级子域名配置到隧道中
- 域名类型:选择二级子域名
- Sub Domain:填写保留成功的二级子域名,本例为 myweb123
点击更新
提示更新隧道成功,点击左侧仪表盘的状态——在线隧道列表,可以看到公网地址已经更新为保留成功的二级子域名,将其复制下来。
七. 测试访问公网固定二级子域名
使用配置成功的 cpolar 二级子域名+在配置文件中配置的 location 代理转发规则
来访问两个站点,测试访问成功,现在该公网地址不会随机变化了。
总结
要实现内网穿透多个 Windows Web 站点端口,可以使用 Nginx 和 cpolar。以下是具体步骤:
1、安装并配置 Nginx:
- 下载 Nginx 二进制文件:访问 Nginx 官网,下载适合你操作系统的 Nginx 二进制文件。
- 解压 Nginx 二进制文件:将下载的文件解压到一个合适的目录,例如 C:\nginx。
- 修改 Nginx 配置文件:在解压后的目录下找到 conf\nginx.conf 文件,用文本编辑器打开并修改以下内容:
http { server { listen 80; # 监听 80 端口 server_name example.com; # 将 example.com 替换为你的域名 location / { root C:\\path\\to\\your\\website; # 将 C:\\path\\to\\your\\website 替换为你的 Web 站点根目录 index index.html index.htm; } } }
- 启动 Nginx:在命令行中切换到 Nginx 的可执行文件所在目录,然后运行
.\nginx.exe
(Windows)或./nginx
(Linux)。
2、安装并配置 cpolar:
- 下载 cpolar 二进制文件:访问 cpolar 官网,下载适合你操作系统的 cpolar 二进制文件。
- 解压 cpolar 二进制文件:将下载的文件解压到一个合适的目录,例如 C:\cpolar。
- 启动 cpolar:在命令行中切换到 cpolar 的可执行文件所在目录,然后运行
.\cpolar.exe
(Windows)或./cpolar
(Linux)。 - 创建一个新的隧道:在 cpolar 的图形界面中,点击左上角的“+”按钮,选择“HTTPS”作为协议,输入你的内网 IP 地址、端口号和域名,然后点击“确定”。
- 添加多个 Web 站点:重复上述步骤,为每个需要穿透的 Web 站点创建一个新的隧道。
完成以上步骤后,你的内网 Web 站点应该可以通过 Nginx 和 cpolar 实现端口转发,从而在内网环境中访问。
码云笔记 » 使用Nginx和cpolar实现内网穿透多个Windows Web站点端口