📜  NGINX反向代理

📅  最后修改于: 2021-01-07 06:13:41             🧑  作者: Mango

NGINX反向代理

代理服务器是驻留在内部应用程序和外部客户端之间的服务器,它将客户端请求转发到适当的服务器。 Nginx反向代理服务器是位于专用网络中防火墙后面的代理服务器,它将客户端请求定向到适当的后端服务器。

反向代理提供了更高级别的抽象和控制,以确保客户端和服务器之间网络流量的顺畅流动。

反向代理服务器的使用

负载-平衡:反向代理服务器可以充当流量警察驻留在我们后端服务器的前面,并在一组服务器之间分配客户端请求,从而提高速度和容量利用率,同时确保没有服务器过载。降低性能。如果服务器没有启动,则负载平衡器会将流量重定向到其余的联机服务器。

Web加速: Nginx反向代理用于压缩出站和入站数据,以及缓存常用的内容,这两者都可以加速客户端和服务器之间的流量。

安全性和匿名性:通过这样做,反向代理服务器可以保护前往后端服务器的客户端的请求,从而保护其身份并充当针对安全攻击的附加防御措施。

将请求传递到代理服务器

当NGINX服务器代理请求时,它将请求发送到指定的代理服务器,获取响应,然后将其发送回客户端。可以使用指定的协议向HTTP服务器或非HTTP服务器提供代理请求。支持的协议包括FastCGI,uwsgi,SCGI和Memcached。

为了将请求传递到HTTP代理服务器,必须在该位置内定义proxy_pass指令。例如:

location /some/path/ {
    proxy_pass http://www.example.com/link/;
}

要将请求传递到非HTTP代理服务器,请使用适当的** _ pass指令:

  • fastcgi_pass:它将请求传递给fastCGI服务器。
  • uwsgi_pass:它将请求传递给uwsgi服务器。
  • scgi_pass:它将请求传递给SCGI服务器。
  • memcached_pass:它将请求传递给memcached服务器。