本文只是作为记录,避免后面遇到此类问题耗费时间。
实际情况:公司有个固定电信宽带是固定IP的,想把固定IP映射到测试环境ip,实现可以公网通过固定ip访问,内网通过局域网ip访问。
测试环境服务是占用的80端口和8080端口。
主要步骤:路由器ip映射----》访问-----》检查问题-------》更改监听端口
第一步:路由器ip映射
第一步就是这么简单。在你的路由器设置好即可
第二步:访问
既然我们已经做好了映射,那么我们直接通过公网ip访问下看看。(特别注意的点:不要让已经在内网的电脑通过打开公网ip去访问,这样是没有效果的,你可以看到你可以访问,但是如果你用外网的电脑去访问该固定ip的话你会发现访问不了)
这里我们不用直接访问的方式,我们直接用telnet进行测试。
[[email protected] ~]# telnet 212.13.141.240 80 Trying 212.13.141.240... ^C [[email protected] ~]# telnet 212.13.141.240 22 Trying 212.13.141.240... Connected to 212.13.141.240. Escape character is ‘^]‘. SSH-2.0-OpenSSH_7.4 ^] telnet> q Connection closed. [[email protected] ~]# telnet 212.13.141.240 8080 Trying 218.17.141.240... ^C
你会发现,我们一个很奇怪的现象就是,22端口是可以telnet通的。其他端口是是不通的。
第三步:检查问题
我们检查发现端口80和8080端口是处于监听状态,并且防火墙是对这两个端口开放的。我们查询资料发现,电信运营商是将一些常用的80.8080端口直接屏蔽了。
第四步:更改监听端口
由于我们既要保证内部网络可以访问,也要保证外部网络可以直接访问。我们用nginx监听两个端口。80端口是局域网直接访问,6666端口用于公网访问。这样就可以了
下面贴下nginx配置。
server { listen 80; listen 6666; server_name amz.test.com; location / { try_files $uri /index.html; root /usr/local/amazonHelpFront/source/dist; } location ^~ /api/ { proxy_pass http://127.0.0.1:8081; proxy_set_header X-Forward-For $remote_addr ; } }
原文地址:https://www.cnblogs.com/operationhome/p/9144262.html
时间: 2024-10-10 01:18:13