Nginx基本配置与优化
来源:互联网 发布:留学低龄化数据 编辑:程序博客网 时间:2024/04/30 11:56
Nginx的配置文件默认在nginx程序安装目录(默认安装路径为'/usr/local/nginx/conf')的conf目录下,主配置文件为nginx.conf.
nginx.conf文件中代码解释:
#使用用户和用户组user wwwwww;#指定工作衍生进程数(一般等于cpu总核数或总核数的两倍)work_processes 8;#指定错误日志存放路径(默认路径:'/usr/local/nginx/logs/error.log'),可选择级别【debug | info | notice | warn | error | crit】error_log/usr/local/nginx/logs/error.logcrit;#指定pid路径(默认为:'/usr/local/nginx/logs/nginx.pid')pid/usr/local/nginx/logs/nginx.pid;#指定文件描述符数量worker_rlimit_nofile51200;events{#使用网络I/O模型,linux系统推荐epoll模型,FreeBSD系统推荐使用kqueue模型usrepoll;#允许连接数worker_connections51200;}http{.........server{......}server{.......}..........}一个nginx.conf配置文件大体是这种结构。nginx中虚拟主机的配置。一个虚拟主机其实就是一个server;http{log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';#第一个虚拟主机server{#监听端口listen80;#主机名称server_namewww.test1.com;#访问日志路径access_loglogs/access1.logmain;location /{#默认首页文件,默认从左到右,如果找不到index.html就找index.htm当做首页indexindex.html index.htm;#项目存放根目录root/webserver/htdocs;}}#第二个虚拟主机server{#监听端口listen80;#主机名称server_namewww.test2.com;#访问日志路径access_loglogs/access2.logmain;location /{#默认首页文件,默认从左到右,如果找不到index.html就找index.htm当做首页indexindex.html index.htm;#项目存放根目录root/webserver/htdocs;}}}
日志文件分割:
mv /usr/local/nginx/logs/access.log/usr/local/nginx/logs/cp_access.log
kill -USR1 nginx 主进程号
通过mv将日志重命名,再发给kill -USR1信号给主进程生新生成一个日志文件;
可以把这段代码写到一个shell文件中,每天定时执行:
nginx_log.sh:
#!/bin/bash#这个脚本每天必须0:00时执行#Nginx日志文件存放路径logs_path='/logs/'mkdir -p ${logs_path}$(date -e "yesterday" + "%Y")/$(date -d "yesterday" + "%Y" + "%m")/mv ${logs_path}access.log ${logs_path}$(date -d "yesterday" + "%Y")/$(date -d "yesterday" + "%Y" + "%m")/access_$(date -d "yesterday" + "%Y%m%d").logkill -USR1`cat /usr/local/nginx/logs/nginx.pid`执行:
crontab -e 00 00 * * * ./nginx_log.sh
Nginx的压缩输出配置
gzip(GNU-ZIP)是一种压缩技术。经过gzip压缩后页面大小变为原来的30%甚至更小。
压缩指令有(写在http{}之间):
gzip on;gzip_min_length 1k;gzip_buffers 4 16k;gzip_http_version 1.1;gzip_comp_level 2;gzip_types text/plain application/x-javascript text/css application/xml;gzip_vary on;
nginx本地浏览器缓存设置
浏览器缓存可以通过expires指令来输出header来实现,expires语法如下:
语法 expires [time|epoch|max|off]
默认 expires off;
作用域 http server location
能过本指令可以控制http应答中的‘expires'和’cache_control'的header头信息起到控制页面缓存作用;
可以在time值中使用正数或负数。“Expires”头标的值将通过当前系统时间加上您设定的 time 值来获得。
epoch 指定“Expires”的值为 1 January, 1970, 00:00:01 GMT
max 指定“Expires”的值为 31 December 2037 23:59:59 GMT,“Cache-Control”的值为10年
-1 指定“Expires”的值为 服务器当前时间 -1s,即永远过期
“Cache-Control”头标的值由您指定的时间来决定:
负数:Cache-Control: no-cache
正数或零:Cache-Control: max-age = #, # 为您指定时间的秒数。
"off" 表示不修改“Expires”和“Cache-Control”的值
demo:
控制图片等过期时间为30天,当然这个时间可以设置的更长。具体视情况而定
比如
location~ \.(gif|jpg|jpeg|png|bmp|ico)$ {
expires 30d;
}
控制匹配/resource/或者/mediatorModule/里所有的文件缓存设置到最长时间
比如
location ~ /(resource|mediatorModule)/ {
root /opt/demo;
expires max;
}
- Nginx基本配置与优化
- 3.nginx 的基本配置与优化
- 《实战nginx》第3章-nginx基本配置与优化
- Nginx配置与优化
- nginx配置与优化
- NGINX基本模块与配置
- nginx基本配置与参数
- nginx安装与基本配置
- Nginx基本配置与参数
- nginx的配置与优化
- Nginx优化设置基本的TCP配置
- 基本的 (优化过的)配置Nginx
- Nginx基本配置和性能优化
- Nginx基本配置、性能优化指南
- Nginx基本配置、性能优化指南
- Nginx基本配置、性能优化指南
- Nginx配置性能基本优化的方法
- Nginx基本配置、性能优化指南
- 链表3 ----- 一次遍历找到中间节点
- OC编程语言学习-4
- poj 2585 Window Pains 拓扑排序
- 整合资源的价值-陈政安
- [学习小结]Ajax基本操作_HTML格式&&在jQuery中如何操作
- Nginx基本配置与优化
- 机房重构(2)——DataGridView控件使用
- 我为什么向后端工程师推荐Node.js
- spring ioc学习
- wikioi1180 模拟
- 算法竞赛入门经典-第二章源代码
- 面试题解答及记录
- HTML转义字符
- 【学习记录】面向对象的基本概念4