RHEL7下Nginx配置文件详解
全局配置
#user nobody nobody;//指定Nginx进程运行用户以及用户组。
worker_processes 1;//开启的进程数。
#error_log logs/error.log;//定义全局错误日志
#error_log logs/error.log notice; //定义全局错误日志
#error_log logs/error.log info; //定义全局错误日志
#pid logs/nginx.pid;//指定进程id的存储文件位置。
Worker_rlimit_nofile 65535;//一个进程可以打开最多文件数量,需要使用命令“ulimit –n 65535”.
events {//设定nginx工作模式及连接数上线
user epoll;//指定Nginx工作模式,值有select、poll、kqueue、epoll、rtsig、/dev/poll.linux系统使用epoll。
worker_connections 65535;进程最大连接数,默认1024.
}
HTTP服务器配置
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和tcp_nodelay设置为on,防止网络阻塞。
#tcp_nopush on;
#tcp_nodelay on;
#keepalive_timeout 0;
keepalive_timeout 65;//客户端连接保持活动的超时时间,超过设定的数值,服务器关闭该链接。
#gzip on;//是否开启压缩功能。
Server虚拟主机配置
server {//标示虚拟主机的开始
listen 80;//监听虚拟主机的端口
server_name localhost;//虚拟主机的域名或者ip地址
index index.html index.htm index.jsp;//设定访问的默认首页地址。
#charset koi8-r;//网页编码格式。
#access_log logs/host.access.log main; //虚拟主机日志存放位置,引用上面设定的日志格式。
URL匹配配置
location ~ .*\. (gif|jpg|jpeg|png|bmp|swf)${
root html;//指定网页根目录
expires 30d;//静态文件失效时间。
}//说明:所有图片格式的静态文件都交给Nginx处理。
location ~ .^/(upload|htm)/{
root html;//指定网页根目录
expires 30d;//静态文件失效时间。
}//说明:所有upload和htm目录下的文件都交给Nginx处理。
location ~ .*.jsp${
index index.jsp;//设定访问的默认首页地址。
Proxy_pass http://localhost:8080;//jsp文件交给本机8080端口处理。
}//说明:所有jsp文件都交给本机8080端口处理。(8080端口可以设置tomcat)
stubstatus配置(手工配置)
location / NginxStatus {
stub_status on;//启用工作状态统计功能。
access_log logs/NginxStatus.log;//指定访问日志文件。
auth_basic “NginxStatus”;//认证机制
auth_basic_user_file ../htpasswd;//认证密码文件。
}
//生产密码文件的方法:添加webadmin用户:useradd webadmin.
//生产密码文件:/usr/local/apache/bin/htpasswd –c /application/nginx/conf/htpasswd webadmin
}