相关推荐recommended
Nginx+cpolar实现内网穿透多个Windows Web站点端口
作者:mmseoamin日期:2023-11-30

文章目录

        • 1. 下载windows版Nginx
        • 2. 配置Nginx
        • 3. 测试局域网访问
        • 4. cpolar内网穿透
        • 5. 测试公网访问
        • 6. 配置固定二级子域名
        • 7. 测试访问公网固定二级子域名
        • 【总结】:

          Nginx+cpolar实现内网穿透多个Windows Web站点端口,在这里插入图片描述,第1张

          1. 下载windows版Nginx

          进入官方网站(http://nginx.org/en/download.html)下载windows版的nginx

          Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180201,第2张

          下载好后解压进入nginx目录双击Nginx.exe即可运行

          Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180202,第3张

          打开浏览器输入http://localhost ,nginx默认使用80端口,所以无需加端口号.出现nginx欢迎页面表示启动成功

          Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180203,第4张

          2. 配置Nginx

          在8086,和9999端口分别配置两个web服务,这里不详细说如何搭建web站点服务,可以参考该教程:https://www.cpolar.com/blog/build-web-server-in-windows-system

          Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180204,第5张

          Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180205,第6张

          站点搭建好后,接下来需要修改nginx.conf配置文件,打开nginx目录,找到conf文件夹下面的nginx.conf

          Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180206,第7张

          编辑文件,这里使用notepad++进行编辑,添加如下信息:

           location ^~ /webs/ {
                      proxy_pass   http://127.0.0.1:8086/;
                  }
          		
          		
          		location ^~ /webc/ {
                      proxy_pass   http://127.0.0.1:9999/;
                  }
          
          • 参数简介(详情请看官方文档):
            ^~  : 表示开头对URL路径进行前缀匹配,并且在正则之前
            proxy_pass: 代理的服务地址
            

            Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180207,第8张

            编辑完保存,打开cmd窗口,进入nginx目录,执行如下命令重启:

            nginx.exe  -s reload 
            

            Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180208,第9张

            3. 测试局域网访问

            重启后Nginx后,打开浏览器,以80端口加上在配置文件中配置的location代理转发规则进行访问两个站点:

            Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180209,第10张

            Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180210,第11张

            4. cpolar内网穿透

            接下来,我们通过强大的且稳定的内网穿透工具cpolar,将本地nginx服务暴露至公网环境,以实现穿透多个站点端口需求,无需公网IP,也不用设置路由器。

            cpolar官网:https://www.cpolar.com/

            打开cpolar官网,下载cpolar并安装。安装完成后,在浏览器上访问本地9200端口【http://localhost:9200/】,登录进入cpolar web ui管理界面。

            点击左侧的隧道管理——创建隧道:

            • 隧道名称:可自定义,注意不要与已有的隧道名称重复
            • 协议:http协议
            • 本地地址:80
            • 域名类型:免费选择随机域名
            • 地区:选择china vip

              点击创建

              Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180211,第12张

              隧道创建成功后,点击左侧的状态——在线隧道列表,可以看到已经有生成了相应的公网地址,将其复制下来。

              Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180212,第13张

              5. 测试公网访问

              打开浏览器,使用cpolar所生成的公网地址+在配置文件中配置的location代理转发规则来访问两个站点,测试访问成功。

              Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180213,第14张

              Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180214,第15张

              6. 配置固定二级子域名

              由于以上使用的cpolar所生成的公网地址为随机临时地址,24小时内会随机变化,我们可以为其配置固定的二级子域名。

              注意,配置固定二级子域名需要将cpolar套餐升级至基础套餐或以上。

              进入cpolar官网并登录进入后台界面,点击左侧的预留,找到保留二级子域名:

              地区:选择China

              二级域名:可自定义

              描述:即备注,可自定义

              二级子域名保留成功后,将其复制下来

              Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180215,第16张

              访问http://127.0.0.1:9200/登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

              Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180216,第17张

              修改隧道信息,将保留成功的二级子域名配置到隧道中

              • 域名类型:选择二级子域名
              • Sub Domain:填写保留成功的二级子域名,本例为myweb123

                点击更新

                Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180217,第18张

                提示更新隧道成功,点击左侧仪表盘的状态——在线隧道列表,可以看到公网地址已经更新为保留成功的二级子域名,将其复制下来。

                Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180218,第19张

                7. 测试访问公网固定二级子域名

                使用配置成功的cpolar二级子域名+在配置文件中配置的location代理转发规则来访问两个站点,测试访问成功,现在该公网地址不会随机变化了。

                Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180219,第20张

                Nginx+cpolar实现内网穿透多个Windows Web站点端口,20320109180220,第21张

                【总结】:

                要实现内网穿透多个Windows Web站点端口,可以使用Nginx和cpolar。以下是具体步骤:

                1. 安装并配置Nginx:

                  • 下载Nginx二进制文件:访问Nginx官网(https://nginx.org/en/download.html)下载适合你操作系统的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)。
                  • 安装并配置cpolar:

                    • 下载cpolar二进制文件:访问cpolar官网(https://www.cpolar.com/)下载适合你操作系统的cpolar二进制文件。
                    • 解压cpolar二进制文件:将下载的文件解压到一个合适的目录,例如C:\cpolar。
                    • 启动cpolar:在命令行中切换到cpolar的可执行文件所在目录,然后运行.\cpolar.exe(Windows)或./cpolar(Linux)。
                    • 创建一个新的隧道:在cpolar的图形界面中,点击左上角的“+”按钮,选择“HTTPS”作为协议,输入你的内网IP地址、端口号和域名,然后点击“确定”。
                    • 添加多个Web站点:重复上述步骤,为每个需要穿透的Web站点创建一个新的隧道。

                完成以上步骤后,你的内网Web站点应该可以通过Nginx和cpolar实现端口转发,从而在内网环境中访问。