深入浅出Nginx之四【日志切割与环境变量】

在真实的Nginx实践过程中,我们通常都会对Nginx的访问日志进行切割,即按照一定的周期生成一个独立的Nginx访问日志文件,以避免存在文件体积过于庞大的日志文件。一方面有助于实际的错误排查,更重要的是有利于Nginx对访问文件的写入天真。同时,可以将Nginx的安装路径加入到环境变量,甚至可以编写启动关闭脚本,以方便实际操作。皱眉

<一>.切割日志文件:

1.编写脚本:su-root

进入主目录:cd~

编写脚本:visplit-nginx-log.sh大笑

Shell代码收藏代码

#!/bin/bash

log_path="/opt/nginx/logs"

dir_name=`date-d"yesterday"+%Y%m`

file_name=`date-d"yesterday"+%Y.%m_%d`

mkdir-p${log_path}/${dir_name}

mv${log_path}/access.log${log_path}/${dir_name}/${file_name}.log

kill-USR1`cat${log_path}/nginx.pid`

细节说明:

1.前一天的日期:date-d"yesterday"+%Y%m%d

2.递归创建目录,如果已存在则不创建:mkdir-p${log_path}/${dir_name}

3.对日志文件重命名:mvaccess.lognew.access.log

4.通知nginx主进程重新打开日志文件:kill-USR1`cat/opt/nginx/logs/nginx.pid`

2.赋予执行权限、执行:

Shell代码收藏代码

ls-al

chmod744split-nginx-log.sh

./split-nginx-log.sh

3.定时调度:每天零点切割日志酷

Shell代码收藏代码

crontab-e

0000***/root/split-nginx-log.sh

<二>.设置环境变量:

1.编辑当前用户PATH:

显示PATH:echo$PATH

用户主目录:cd~

编辑文件、追加如下内容:vi.bash_profile大笑

Shell代码收藏代码

NGINX_HOME=/usr/local/nginx

PATH=$NGINX_HOME/sbin:$PATH

exportPATH

立即生效:source.bash_profile

2.启动、关闭:

Shell代码收藏代码

nginx-c/usr/local/nginx/conf/nginx.conf

nginx-squit

3.可执行脚本:

启动:vistart-nginx.sh

Shel代码收藏代码

nginx-c/usr/local/nginx/conf/nginx.conf

关闭:vistop-nginx.sh

Shell代码收藏代码

nginx-squit

执行权限:

Shell代码收藏代码

chmod744start-nginx.sh

chmod744stop-nginx.sh

执行脚本:蠢话

Shell代码收藏代码

./start-nginx.sh

./stop-nginx.sh

相关推荐