Nginx配置文件常用参数详解(二)

Nginx Web默认发布静态页面,也可以均衡后端动态页面,用户发起HTTP请求,如果请求为静态页面,Nginx直接处理并返回,如果请求的是动态页面, Nginx收到请求之后会进行判断,转到后端服务器去处理Nginx实现负载均衡需要基于upstream模块,同时需要设置 location proxy_ pass:转发指令实现以下为 Nginx应用负载均衡集群配置,根据后端实际情况修改即可,
dzqc_www为负载均衡模块的名称,可以任意指定,但必须跟vhost.conf、 nginx.conf虚拟主机的proxy_pass段保持一致,否则不能将请求转发至后端的服务器, weight表示配置权重,在fail_timeout内检查 max_fails次数,失败则剔除均衡,代码如下:
pstream dzqc_www{
server 127.0.0.1:8080 weight=1 max_fails=2 fail_timeout=30s
server 127.0.0.1 weight=1 nax_fails=2 fail_timeout=30s
}
#虚拟主机配置
server{
#侦听80端口
listen 80;
#定义使用ww.dzqcyunwei.net访问
server_name ww.dzqcyunwei.net;
#设定本虚拟主机的访问日志
access_log logs/access.log main;
root /data/webapps/www; #定义服务器的默认网站根目录位置
index index. php index. html index.htm;#定义首页素引文件的名称
#默认请求
location ~/{
root /data/webapps/www;
#定义服务器的默认网站根目录位置
index index. php index. html index.htm;#定义首页索引文件的名称
#以下是一些反向代理的配置
proxy_next_upstream http_502 http_504 error timeout invalid_header
#如果后端的服务器返回502、504、执行超时等错误,自动将请求转发到 upstream
#负载均衡池中的另一台服务器,实现故障转移
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 KaTeX parse error: Double subscript at position 12: proxy_add_x_̲forwarded_for; …
{
root /data/webapps/www
#expires定义用户浏览器缓存的时间为3天,如果静态页面不常更新,可以设置更
#长,这样可以节省带宽和缓解服务器的压力,在浏览器保存该类型文件的天数。
expires 3d;
}
#PHP脚本请求全部转发到 FastcCGI处理,使用 FastCGI默认配置
location ~. php ${
root /root;
FastCGI_pass 127.0.0.1:9000;
FastCGI_index index.php
FastCGI_param SCRIPT_FILENAME /data/webapps/www $FastCGI_script_name;
include FastCGI_params;
}
设定查看 Nginx状态的地址
location /NginxStatus{
stub_status on;
}
}
}
通过 expires参数设置,可以在浏览器缓存静态文件,从而减少用户与服务器之间的请
求和流量。具体 expires定义是给一个资源设定一个过期时间,浏览器无须去服务端下载资
源,直接通过浏览器自身确认是否过期即可,所以不会产生额外的流量。
如果静态文件不常更新, expires可以设置为30d,表示在这30天之内再次访问该静态
文件,浏览器会发送一个HTTP请求,会比对服务器该文件最后更新时间是否有变化,如果
没有变化,则不会从服务器抓取,返回HTTP状态码304,如果有修改,则直接从服务器重
新下载,返回HTTP状态码200。

猜你喜欢

转载自blog.csdn.net/SSECLaiFU/article/details/89643284
今日推荐