当前位置:  操作系统/服务器>linux
本页文章导读:
    ▪Nginx无缝升级的测试实例      本节主要内容: nginx的无缝升级 Nginx编译后就一个小文件,不带动态库,升级也可以无缝升级,并不影响访问。 首先,下载Nginx,然后执行:   代码示例: wget http://soft.vpser.net/web/nginx/nginx-0..........
    ▪Nginx打开目录浏览功能(autoindex)的方法      本文主要内容: nginx开启目录浏览功能 Nginx默认是不允许列出整个目录的。 打开nginx的目录浏览功能的方法,如下: 打开nginx.conf文件,在location server 或 http段中加入 autoindex on; 另外两个参.........
    ▪分享:logrotate分割nginx日志的脚本      本节主要内容: 使用logrotate分割Nginx日志 首先,logrotate日志分割配置:   代码示例: # cat /etc/logrotate.d/nginx /data/nginx_logs/*.access_log         #nginx日志所在目录 { nocompress   #不对日志.........

[1]Nginx无缝升级的测试实例
    来源: 互联网  发布时间: 2013-12-24

本节主要内容:
nginx的无缝升级

Nginx编译后就一个小文件,不带动态库,升级也可以无缝升级,并不影响访问。

首先,下载Nginx,然后执行:
 

代码示例:
wget http://soft.vpser.net/web/nginx/nginx-0.7.65.tar.gz

再执行:
 

代码示例:
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

按原来的路径配置,自己需要的包打上。

然后make,但不要install。

编译完,在objs目录下有一个nginx执行文件,就是它了。

备份下旧的nginx文件:
 

代码示例:
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old

在把新objs下的nginx cp到sbin下。

nginx -t 测试下,显示通过。
 

代码示例:

//让nginx把nginx.pid改成nginx.pid.oldbin 跟着启动新的nginx,一般lnmp一键安装包安装的按下面执行命令即可。
kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`

//退出旧的nignx
kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`

至此,nginx的无缝升级完成。


    
[2]Nginx打开目录浏览功能(autoindex)的方法
    来源: 互联网  发布时间: 2013-12-24

本文主要内容:
nginx开启目录浏览功能

Nginx默认是不允许列出整个目录的。

打开nginx的目录浏览功能的方法,如下:
打开nginx.conf文件,在location server 或 http段中加入
autoindex on;

另外两个参数最好也加上去:
autoindex_exact_size off;
默认为on,显示出文件的确切大小,单位是bytes。
改为off后,显示出文件的大概大小,单位是kB或者MB或者GB

autoindex_localtime on;
默认为off,显示的文件时间为GMT时间。
改为on后,显示的文件时间为文件的服务器时间
 

代码示例:
location /images {
    root   /var/www/nginx-default/ibugaocn;
    autoindex on;
}

参考:http://wiki.nginx.org/NginxChsHttpAutoindexModule

若希望目录列表支持header、footer则可以安装三方插件:
http://wiki.nginx.org/NginxNgxFancyIndex


    
[3]分享:logrotate分割nginx日志的脚本
    来源: 互联网  发布时间: 2013-12-24

本节主要内容:
使用logrotate分割Nginx日志

首先,logrotate日志分割配置:
 

代码示例:
# cat /etc/logrotate.d/nginx
/data/nginx_logs/*.access_log         #nginx日志所在目录
{
nocompress   #不对日志文件进行转储压缩
daily        #指定转储周期为每天
copytruncate #用于还在打开中的日志文件,把当前日志备份并截断
create       #建立新的日志文件
ifempty      #即使是空文件也转储
olddir /data/nginx_logs/days  #转储后的日志文件放入指定的目录,必须和当前日志文件在同一个文件系统
rotate 0  #指定日志文件删除之前转储的次数,0 指没有备份,5 指保留5个备份
}

相关阅读:
nginx中使用Logrotate管理日志的方法分享

附,日志分割脚本:
 

代码示例:
#!/bin/bash
#
#site: www.
#创建转储日志压缩存放目录
mkdir -p /data/nginx_logs/days
#手工对nginx日志进行切割转换
/usr/sbin/logrotate -vf /etc/logrotate.d/nginx
#当前时间
time=$(date -d "yesterday" +"%Y-%m-%d")
#进入转储日志存放目录
cd /data/nginx_logs/days
#对目录中的转储日志文件的文件名进行统一转换
for i in $(ls ./ | grep "^\(.*\)\.[[:digit:]]$")
do
mv ${i} ./$(echo ${i}|sed -n 's/^\(.*\)\.\([[:digit:]]\)$/\1/p')-$(echo $time)
done
#对转储的日志文件进行压缩存放,并删除原有转储的日志文件,只保存压缩后的日志文件。以节约存储空间
for i in $(ls ./ | grep "^\(.*\)\-\([[:digit:]-]\+\)$")
do
tar jcvf ${i}.bz2 ./${i}
rm -rf ./${i}
done
#只保留最近7天的压缩转储日志文件
find /data/nginx_logs/days/* -name "*.bz2" -mtime 7 -type f -exec rm -rf {} \;

#-----------
 

代码示例:
#给予执行权限,放到crontab中执行
#logrotate
0 0 * * * /usr/local/sbin/logrotate-nginx.sh > /dev/null 2>&1

您可能感兴趣的文章:
nginx 日志分割的小脚本
nginx日志配置、Nginx日志分割
Nginx日志按天分割的方法分享(图文)
一个分割ngnix网站日志的Shell脚本
每天自动分割Nginx日志文件的Shell脚本


    
最新技术文章:
▪linux系统中的列出敏感用户的脚本代码
▪a10 config backup for aXAPI
▪一键备份gitolite服务器的Shell脚本
▪nagios 分发文件实现代码
▪阿里云云服务器Linux系统更新yum源Shell脚本
▪一个监控LINUX目录和文件变化的Shell脚本分享
▪Linux下实现SSH免密码登录和实现秘钥的管理、...
▪Shell正则表达式之grep、sed、awk实操笔记
▪3个备份系统文件并邮件发送的Shell脚本分享
▪CentOS 6.3下给PHP添加mssql扩展模块教程
▪监控网站是否可以正常打开的Shell脚本分享
▪shell脚本编程之if语句学习笔记
▪shell脚本编程之循环语句学习笔记
▪shell脚本编程之case语句学习笔记
▪Shell脚本实现的阳历转农历代码分享
▪Shell脚本实现复制文件到多台服务器的代码分...
▪Shell脚本实现批量下载网络图片代码分享
▪Shell脚本实现检测文件是否被修改过代码分享
▪Shell脚本数组用法小结
▪Shell脚本批量重命名文件后缀的3种实现
▪C语言实现的ls命令源码分享
▪Linux下查找后门程序 CentOS 查后门程序的shell脚...
▪Shell 函数参数
IP地址数字互转 iis7站长之家
▪Shell实现判断进程是否存在并重新启动脚本分...
▪Shell脚本break和continue命令简明教程
▪Shell脚本函数定义和函数参数
▪让代码整洁、过程清晰的BASH Shell编程技巧
▪shell常用重定向实例讲解
▪awk中RS、ORS、FS、OFS的区别和联系小结
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3