Node.js监测文件或目录变化

分类:Linux, 发布于 2017-09-15  浏览(465)

因业务需求需要监测指定目录下的文件或目录变化,nodejs有一个模块就是干这个的。

详细请移步:

https://github.com/paulmillr/chokidar

解决Nginx配置SSL证书出现"PEM_read_bio:bad end line"问题

分类:Linux, 发布于 2017-09-14  浏览(489)

在配置nginx证书时出现如下错误:

nginx: [emerg] PEM_read_bio_X509_AUX("/root/domain.crt") failed (SSL: error:0906D066:PEM routines:PEM_read_bio:bad end line)

是因为pem文件没有将END CERTIFICATE 和BEGIN CERTIFICATE分开来

将pem文件中的行:

-----END CERTIFICATE----------BEGIN CERTIFICATE-----

换行改为:

-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----

就可以了。

平滑升级Nginx

分类:Linux, 发布于 2017-09-14  浏览(437)

有时候需要增加某些模块,又不能影响现有的业务,所以就必须要平滑升级Nginx,过程如下:

1、查看现有的nginx编译参数

    /usr/local/nginx/sbin/nginx -V

2、按照安装nginx的方法进行安装,只需要到make,千万不要make install

3、备份旧版本的nginx可执行文件(期间nginx不会停止服务)

 mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old

4、复制新的nginx二进制文件,进入新的nginx源码包

    cp objs/nginx /usr/local/nginx/sbin/

5、测试新版本的nginx是否正常

    /usr/local/nginx/sbin/nginx -t

6、给nginx发送平滑迁移信号(若不清楚pid路径,请查看nginx配置文件)

    kill -USR2 `cat /var/run/nginx.pid`

7、查看nginx pid,会出现一个nginx.pid.oldbin

8、从容关闭旧的Nginx进程

    kill -WINCH `cat /var/run/nginx.pid.oldbin`

9、此时不重载配置启动旧的工作进程

    kill -HUP `cat /var/run/nginx.pid.oldbin`

10、结束工作进程,完成此次升级

    kill -QUIT `cat /var/run/nginx.pid.oldbin`

11、验证Nginx是否升级成功

    /usr/local/nginx/sbin/nginx -V