Nginx前后端分离的Conf配置文件模板

作者: jekkay 分类: vue.js 发布时间: 2017-12-27 17:32

通常,如果我们开发的Web应用是前后端分离的话,调试起来会比较麻烦,网上有很多辅助工具,我这里比较喜欢用Nginx作为辅助测试工具。其工作原理很简单,就是在Nginx配置一下Location路由,将前端的请求反向代理到前端的Server地址,数据请求接口反向代理到后端的接口。其基本配置如下,可以根据自己的需求更改。

http {
include mime.types;
default_type application/octet-stream;

#log_format main ‘$remote_addr – $remote_user [$time_local] “$request” ‘
# ‘$status $body_bytes_sent “$http_referer” ‘
# ‘”$http_user_agent” “$http_x_forwarded_for”‘;

#access_log logs/access.log main;

sendfile on;
#tcp_nopush on;

#keepalive_timeout 0;
keepalive_timeout 65;

#gzip on;

upstream data-server {
server 127.0.0.1:8080;
}

upstream static-web-server {
server 127.0.0.1:8888;
}

server {
listen 666;
server_name localhost;

#charset koi8-r;

#access_log logs/host.access.log main;

# 在Server级别配置反向代理的参数
proxy_redirect off ;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

# 默认反向代理到静态
location / {
# proxy_set_header Host $host:8888; # 根据需要
proxy_pass http://static-web-server;
}

# 起始页码跳转到index.html
location = / {
rewrite /index.html last;
}

# 静态页面服务器, 下面可以不要,示范用
# location ^~ /static {
# # proxy_set_header Host $host:8888; # 根据需要
# proxy_pass http://static-web-server;
# }

# 特殊页面 1
location ~* (login|logout).html$ {
proxy_set_header Host $host:666; # 根据需要
proxy_pass http://data-server;
}
# 特殊页面 2
location ~* openid {
proxy_set_header Host $host:666; # 根据需要
proxy_pass http://data-server;
}

# 通用数据接口以do或者json结尾的,反向代理到数据服务器
location ~* .(do|json)$ {
proxy_set_header Host $host:666; # 根据需要
proxy_pass http://data-server;
}

# 数据接口服务器
location ~* (login|logout)$ {
proxy_set_header Host $host:666; # 根据需要
proxy_pass http://data-server;
}
}

}

 

胡杨

2017-12-27

原文出处:  http://www.easysb.cn/index.php/2017/12/27/05

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。