起因是这篇文章
https://github.com/EtherDream...
里面有这样一段描述
举个例子,假如我们用 a.com 反向代理 b.com ,并且 b.com 有如下网页:
<img src="/foo.gif">
<img src="http://b.com/bar.gif">
第一个 img 是相对路径。由于当前实际地址是 a.com ,因此最终访问的 URL 是 http://a.com/foo.gif 。我们的后端服务器收到请求后,抓取 http://b.com/foo.gif 的内容并返回给用户。这没有问题。
第二个 img 是绝对路径,这就有问题了!浏览器会直接访问 b.com ,根本不经过我们的后端。而 b.com 是无法直接访问的,于是图片加载失败。
我的问题是:难道我用 nginx 反向代理页面的话,绝对路径的资源真的都不会经过 nginx 这层吗?
有老哥给我科普一下吗,这和我的理解不一样阿,我一直以为 nginx 就是把我请求的所有资源一起在它那里请求完给我。不是吗?
你的理解有问题
nginx不管怎么样,都需要你先访问到他,然后他根据一些规则,去对应的服务器去资源。
你现在直接跳过了他。咋的,你在内网,就希望外网的nginx可以拦住你?