nginx.cnf
# For more information on configuration, see:
# * Official English Documentation: http://nginx.org/en/docs/
# * Official Russian Documentation: http://nginx.org/ru/docs/
# 指定Nginx运行的用户和组(默认为nginx)。
user nginx;
# 设置工作进程数(auto 表示自动匹配CPU核心数)可以设置具体数量,根据服务器cpu核心数具体设置。
worker_processes auto;
# 定义错误日志路径和级别(warn 表示记录警告及以上级别的日志)。
error_log /var/log/nginx/error.log;
# 指定Nginx主进程的PID文件路径。
pid /run/nginx.pid;
# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;
events {
# 每个工作进程的最大并发连接数(需结合 worker_processes 计算总并发:worker_processes × worker_connections)。
worker_connections 1024;
}
http {
# 日志格式
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 /var/log/nginx/access.log main;
# 性能优化
#用来设置 Nginx 服务器是否使用 sendfifile() 传输文件,该属性可以大大提高Nginx 处理静态资源的性能
sendfile on;
tcp_nopush on;
tcp_nodelay on;
#用来设置长连接的超时时间
keepalive_timeout 65;
types_hash_max_size 4096;
#包含的http MIME类型
include /etc/nginx/mime.types;
default_type application/octet-stream;
# Load modular configuration files from the /etc/nginx/conf.d directory.
# See http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /etc/nginx/conf.d/*.conf;
server {
# 监听IPv4的80端口
listen 80;
# 监听IPv6的80端口
listen [::]:80;
# 匹配所有域名(默认服务器)
server_name _;
#代表访问ip默认显示页面、网站根目录
# return 404;
# root /dev/null;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
#swagger通过nginx转发代理
location ~* ^(/v2/|/webjars/|/swagger-resources|/swagger-ui.html|/doc.html) {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://127.0.0.1:9009;
}
#如果代码没配置host,swagger会获取host,所以需要默认ip下配置到该路径下
#可以看/v2/api-docs?group=s接口的返回
location / {
proxy_pass http://127.0.0.1:9009;
}
# 配置错误页面 = 表示精准匹配
error_page 404 /404.html;
location = /404.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
}