总nginx配置
nginx.conf
#user nobody;
worker_processes 2;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
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;
server {
listen 8020;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
# 引入vhost 目录下的所有.conf文件
include vhost/*.conf;
}
分包nginx配置,多个服务分文件管理
vhost/ry.conf 文件
前端访问地址是 http://10.128.51.43:8086
#也可以使用这种统一变量替换
# upstream ryback {
#server xxxxx(ip地址)
# }
server {
listen 8086;
server_name localhost;
# 设置变量替换 index.html
location @router {
rewrite ^.*$ /index.html last;
}
location / {
#防止前端用webHistory路由刷新404
try_files $uri $uri/ @router;
#try_files $uri $uri/ /ui/index.html;
#alias /data/ui/ui/;
#root /data/ui/;
# 前端在服务器的地址
root /data/ui/ui/;
index index.html index.htm;
}
# 这个前缀匹配是前端加的,和后端无关
location /ryapi {
rewrite ^/ryapi/(.*)$ /$1 break;
#后端服务地址
proxy_pass http://10.128.51.43:8081;
#proxy_pass http://ryback;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
分包nginx配置
vhost/smart.conf
前端访问地址:10.123.54.43:(80端口可以不写)
upstream backend {
server 10.123.54.43:9082;
}
server {
listen 80;
server_name localhost;
location @router {
rewrite ^.*$ /index.html last;
}
location / {
# 解决前端刷新404
try_files $uri $uri/ @router;
#root /data/ui;
// 前端地址
root /data/ui/smart-main-ui/;
#alias /data/ui/smart-main-ui;
index index.html index.htm;
}
#第二个前端项目访问地址 ip/form-design,这里就不能用root一步到位了,需要使用try_files 后面跟着 # 根目录后面的名字
location /form-design {
#try_files $uri $uri/ @router;
try_files $uri $uri/ /smart-form-design-ui/index.html;
#alias /data/ui/smart-webform-ui/;
root /data/ui/;
index index.html index.htm;
error_page 405 =200 $request_uri;
}
# 这个前缀匹配是前端加的,和后端无关
location /main {
# 转发到后端真实地址
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}