nginx.conf 配置文件详解

时间:2022-10-14 12:52:40

简单的实现nginx在前端做反向代理服务器的例子,处理js、png等静态文件,jsp等动态请求转发到其它服务器tomcat:

user  www www;
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 {
use epoll;
worker_connections
2048;
}
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
65;
# gzip压缩功能设置
gzip on;
gzip_min_length 1k;
gzip_buffers
4 16k;
gzip_http_version
1.0;
gzip_comp_level
6;
gzip_types text
/html text/plain text/css text/javascript application/json application/javascript application/x-javascript application/xml;
gzip_vary on;

# http_proxy 设置
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout
75;
proxy_send_timeout
75;
proxy_read_timeout
75;
proxy_buffer_size 4k;
proxy_buffers
4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
proxy_temp_path
/usr/local/nginx/proxy_temp 1 2;
# 设定负载均衡后台服务器列表
upstream backend {
#ip_hash;
server
192.168.10.100:8080 max_fails=2 fail_timeout=30s ;
server
192.168.10.101:8080 max_fails=2 fail_timeout=30s ;
}
# 很重要的虚拟主机配置
server {
listen
80;
server_name itoatest.example.com;
root
/apps/oaapp;
charset utf
-8;
access_log logs
/host.access.log main;
#对
/ 所有做负载均衡+反向代理
location
/ {
root
/apps/oaapp;
index index.jsp index.html index.htm;
proxy_pass http:
//backend;
proxy_redirect off;
# 后端的Web服务器可以通过X
-Forwarded-For获取用户真实IP
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_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;

}
#静态文件,nginx自己处理,不去backend请求tomcat
location
~* /download/ {
root
/apps/oa/fs;

}
location
~ .*\.(gif|jpg|jpeg|bmp|png|ico|txt|js|css)$
{
root
/apps/oaapp;
expires 7d;
}
location
/nginx_status {
stub_status on;
access_log off;
allow
192.168.10.0/24;
deny all;
}
location
~ ^/(WEB-INF)/ {
deny all;
}
#error_page
404 /404.html;
# redirect server error pages to the
static page /50x.html
#
error_page
500 502 503 504 /50x.html;
location
= /50x.html {
root html;
}
}
## 其它虚拟主机,server 指令开始
}