当前位置:首页 > 资讯 > 正文

基于CentOS 7配置Nginx反向代理

基于CentOS 7配置Nginx反向代理

Nginx作为反向代理服务器被广泛使用在各大互联网企业。它简单易用,可以根据业务的需求将其不同的业务类型代理至不同的服务器,将整个站点请求压力按类型分摊到不同的服务器。该方式使的整个站点请求性能得以极大的提升。本文简要描述了Nginx几种不同情形的代理演示,供大家参考。

1、反向代理

在计算机网络中,反向代理是一种代理服务器,代表客户端从一个或多个服务器检索资源。然后将这些资源返回给客户机,就像它们源自Web服务器本身一样。与正向代理相反,正向代理是与其关联的客户端联系任何服务器的中介,反向代理是任何客户端与其关联的服务器进行联系的中介。

有关正向代理可参考:基于CentOS 7配置Nginx正向代理

1、后端服务器配置(Apache)

2、前端Nginx反向代理服务器配置

3、反向代理服务器及后端服务器日志格式设置

Nginx upstream指令也可以将请求代理到后端服务器
如下示例,结合upstream指令演示将其代理到tomcat

proxy模块的可用配置指令非常多,它们分别用于定义proxy模块工作时的诸多属性,如连接超时时长、代理时使用http协议版本等。下面对常用的指令做一个简单说明。

proxy_connect_timeout
  nginx将一个请求发送至upstream server之前等待的最大时长;
proxy_cookie_domain
  将upstream server通过Set-Cookie首部设定的domain属性修改为指定的值,其值可以为一个字符串、正则表达式的模式或一个引用的变量;
proxy_cookie_path
   将upstream server通过Set-Cookie首部设定的path属性修改为指定的值,其值可以为一个字符串、正则表达式的模式或一个引用的变量;
proxy_hide_header
  设定发送给客户端的报文中需要隐藏的首部;
proxy_pass
  指定将请求代理至upstream server的URL路径;
proxy_set_header
  将发送至upsream server的报文的某首部进行重写;
proxy_redirect
  重写location并刷新从upstream server收到的报文的首部;
proxy_send_timeout
  在连接断开之前两次发送至upstream server的写操作的最大间隔时长;
proxy_read_timeout
   在连接断开之前两次从接收upstream server接收读操作的最大间隔时长;

注:最后更新时间20171110,添加反向代理至tomcat内容