前后端分离的nginx配置
一下所有的文件都是在nginx安装目录的conf目录下:
1 #user nobody; 2 # 一般一个就够 3 # 如果有SSL、gzip这些比较消耗CPU的工作,而且是多核CPU的话,可以设为和CPU的数量一样 4 worker_processes 1; 5 6 #error_log logs/error.log; 7 #error_log logs/error.log notice; 8 #error_log logs/error.log info; 9 10 #pid logs/nginx.pid; 11 12 events { 13 # number的值不能大于操作系统能打开的最大的文件句柄数,使用ulimit -n可以查看当前操作系统支持的最大文件句柄数,默认为为1024 14 worker_connections 1024; 15 multi_accept on; 16 use epoll; 17 } 18 19 20 http { 21 include mime.types; 22 default_type application/octet-stream; 23 charset UTF-8; 24 25 log_format main '{"@timestamp":"$time_iso8601",' 26 '"host":"$server_addr",' 27 '"clientip":"$remote_addr",' 28 '"request":"$request",' 29 '"size":$body_bytes_sent,' 30 '"responsetime":$request_time,' 31 '"upstreamtime":"$upstream_response_time",' 32 '"upstreamhost":"$upstream_addr",' 33 '"upstreamstatus":"$upstream_status",' 34 '"http_host":"$host",' 35 '"url":"$uri",' 36 '"domain":"$host",' 37 '"xff":"$http_x_forwarded_for",' 38 '"referer":"$http_referer",' 39 '"agent":"$http_user_agent",' 40 '"status":"$status"}'; 41 42 # server内可以重新定义去重写文件位置 43 access_log logs/access.log main; 44 #error_log logs/error.log; 45 46 # 隐藏nginx版本 47 server_tokens off; 48 sendfile on; 49 tcp_nopush on; 50 tcp_nodelay on; 51 52 # 设置超时时间 53 keepalive_timeout 60; 54 client_body_timeout 120s; 55 client_header_timeout 180s; 56 reset_timedout_connection on; 57 send_timeout 60; 58 59 # 每一个IP地址最多同时打开有100个连接 60 limit_conn addr 100; 61 limit_conn_zone $binary_remote_addr zone=addr:5m; 62 63 server_names_hash_bucket_size 128; 64 client_header_buffer_size 32k; 65 large_client_header_buffers 8 64k; 66 client_max_body_size 512m; 67 client_body_buffer_size 20m; 68 69 # 打开文件缓存 70 open_file_cache max=200000 inactive=20s; 71 open_file_cache_valid 30s; 72 open_file_cache_min_uses 2; 73 open_file_cache_errors on; 74 75 # 改善网站的性能:减少资源占用,提高访问速度 76 fastcgi_connect_timeout 120s; 77 fastcgi_read_timeout 120s; 78 fastcgi_send_timeout 120s; 79 fastcgi_buffers 8 128k; 80 fastcgi_buffer_size 128k; 81 fastcgi_intercept_errors on; 82 fastcgi_busy_buffers_size 128k; 83 84 # 启动gzip压缩 85 gzip on; 86 gzip_static on; 87 gzip_disable "msie6"; 88 gzip_proxied any; 89 gzip_min_length 1k; 90 # 压缩比,1-9,数值越大压缩比率越大 91 gzip_comp_level 6; 92 gzip_buffers 4 16k; 93 gzip_http_version 1.1; 94 gzip_types text/plain application/javascript application/x-javascript application/font-woff
text/css application/xml text/javascript application/x-httpd-php image/jpeg
image/gif image/png application/json application/xml+rss; 95 gzip_vary on;
# 禁止未定义的域名或者ip进行访问
server {
listen 80 default_server;
return 444;
}
96 97 # 多配置文件模式,将不同的http模块放到不同的目录文件中去 98 # 遍历加载当前目录下conf.d目录下所有的.conf文件 99 include conf.d/*.conf; 100 }
upstream services { server 127.0.0.1:8080; # 可配置多个 # server 127.0.0.1:8081; } server { # 访问端口 listen 80; # 配置域名 server_name localhost; # 自定义路径 # access_log /var/log/server/tengine/ahbr.log main; # 设置的以/api开始的请求都是服务端接口请求 # 这里根据自己的配置进行调整 location ~ ^/api { proxy_set_header Host $host; proxy_pass_header User-Agent; proxy_connect_timeout 90; proxy_read_timeout 90; proxy_buffer_size 4k; proxy_buffers 6 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k; proxy_redirect off; proxy_pass http://services; } # 静态文件根目录 root /usr/local/ngine/html; # 前端页面访问 location ~ ^/admin { try_files $uri $uri/ /admin/index.html; } # 静态文件 location ~ ^/(uploads) { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-Forwarded-Proto https; proxy_redirect off; client_max_body_size 500m; client_body_buffer_size 3m; proxy_connect_timeout 90; proxy_read_timeout 90; proxy_buffer_size 4k; proxy_buffers 6 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k; try_files $uri $uri/; } }

浙公网安备 33010602011771号