---
url: /blog/tdz5e24c/index.md
---
# 开启代理后，解决开启 vpn 代理后无法访问 hosts 域名以及 Nginx

版权声明：本文为博主原创文章，遵循 [CC 4.0 BY-SA](http://creativecommons.org/licenses/by-sa/4.0/) 版权协议，转载请附上原文出处链接和本声明。

本文链接：<https://blog.csdn.net/zsy996/article/details/134908223>

关闭[vpn](https://so.csdn.net/so/search?q=vpn\&spm=1001.2101.3001.7020)时，正常 Http 请求结构如下。\
![](./开启代理后，域名和nginx访问问题.assets/6bdd753f32eb2ef608aba4365e04ac98.png)\
Nginx 是通过 Host，以及监听 80 端口，来确认某个请求的。\
当使用 Vpn 正向代理后，我的代理端口是 7888。\
此时 Host 未变，而端口却变成了代理端口，这样 Nginx 应该是无法监听到.\
![](./开启代理后，域名和nginx访问问题.assets/99ad847e859fe0504cc2d886e9e2b26c.png)

查看一下代理日志，\
![](./开启代理后，域名和nginx访问问题.assets/a335c0da4c67aef264eb863a9138b00e.png)

发现应该是 VPN 的 dns 服务器无法解析 Host 映射的域名。\
最简单的处理方式：设置某些域名不走代理\
通过设置 CFW 中的 Bypass Domain/IpNet\
![](./开启代理后，域名和nginx访问问题.assets/c61b76dd8f3c00a53819e4515fb67545.png)\
如图\
![](./开启代理后，域名和nginx访问问题.assets/9eaa585b237c9592bb7dc1b20945df09.png)

设置完后，就可以开着代理也能正常访问本地 hosts 域名以及 Nginx 了。
