Nginx之http正向代理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx之http正向代理相关的知识,希望对你有一定的参考价值。

正向代理:

如果把局域网外的Internet想象成一个巨大的资源库,则局域网中的客户端要访问Internet,则需要通过代理服务器来访问,这种代理服务就称为正向代理。

反向代理:

如果局域网向Internet提供资源服务,让Internet上的其他客户端来访问局域网内的资源,使它们必须通过一个代理服务器来进行访问,这种服务就称为反向代理。正向代理和反向代理逻辑正好相反。

正向代理的用途:

  1. 访问无法访问的资源,如google;

  2. 可以做缓存,加速访问资源;

  3. 对客户端访问授权,上网进行认证;

  4. 代理可以记录用户访问记录,对外隐藏用户信息;

nginx配置如下:

server {  
resolver 114.114.114.114 ipv6=off;  #必须设置,否则nginx无法处理接收到的域名
listen 80; 

location / {
proxy_pass http://$http_host$request_uri; #设置代理服务器的协议:url地址
}
}

注意事项:

  1. 不要出现sever_name指令,即不要设置虚拟主机的名称和IP;

  2. resolver是必需的,如果没有该指令,nginx无法处理接收到的域名;

  3. Nginx代理服务(默认模块)不支持正向代理HTTPS站点。

以上nginx配置完成后,重启下nginx就可以生效了。
此时我们在客户端浏览器中设置代理服务:“Internet选项” -> “连接” -> “局域网设置” -> “代理服务器”,填入代理服务器IP和端口即可以访问Internet了。

以上是关于Nginx之http正向代理的主要内容,如果未能解决你的问题,请参考以下文章

nginx实践之代理服务(正向代理与反向代理介绍)

学习Nginx之理解正向代理和反向代理

nginx 正向代理

nginx实现正向代理和反向代理

nginx如何配置多IP的HTTP正向代理?

nginx正向代理http