Skip to content

介绍

在上一章中,提到了上传前端项目,并配置location实现项目的基本访问。但是只涉及了动静分离中的,这一章主要来说明。也就是利用反向代理来设置接口转发,将前端服务器上的ajax请求映射到后端服务器上去。

配置反向代理

proxy_pass

其实,反向代理也是直接设置location块。

假设jsgoshu.cn/api/getProductList这个获取商品列表的接口要映射到后端服务器service.com:8600。在jsgoshu.cn的服务器上就这样来配置:

nginx
server {
  listen 80;
  server_name jsgoshu.cn;
  location /api/ {
    proxy_set_header X-Real-IP $ClientRealIP;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_http_version 1.1 ;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    access_log logs/api_access.log;
    error_log  logs/api_error.log;
    #核心
    proxy_pass http://service.com:8600;
  }
}

上述配置的核心语法就是proxy_pass。它会将命中的匹配转发到目标服务器。其余的语法是在设置转发时的请求头和一些其它描述。