我正在尝试为我的域及其一些子域设置nginx反向代理。子域名完美运行,但我在顶级域名上一直收到ERR_NAME_NOT_RESOLVED。
除server_name
和proxy_pass
端口外,顶级域及其子域之间的nginx配置相同。
nginx config:
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://localhost:5500;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
DNS设置:
这更像是一个DNS问题,而不是Nginx问题,但我不明白为什么子域工作而顶级域工作没有。
答案 0 :(得分:0)
@ AlexeyTen关于重新启动浏览器的评论给了我一个想法,最终解决了我的问题。
基本上,我在开发计算机上使用Acrylic DNS proxy来处理.local
域以进行开发。大多数人通常使用hosts
文件来添加本地域,但我发现这个过程很繁琐,因为我多年来一直在处理数百个本地域,所以我最终使用这个接受通配符域的代理,这意味着我从来没有再次触摸主机文件。
但是,在这种情况下,我的本地DNS代理似乎有一个我的顶级域的损坏缓存。我只是清除缓存并重新启动代理并修复了所有问题。我不知道为什么会发生这种情况,但很高兴知道它可能会发生,所以如果将来发生类似情况,这将是我第一个看到的地方。
感谢@AlexeyTen让我跳出框框思考。虽然它不是浏览器的DNS缓存,但该评论让我意识到我的服务器上的DNS设置可能没有任何问题,而是我的本地计算机出了问题。