解决error: the HTTP rewrite module requires the PCRE library.,rewritepcre步骤2:发送信号从容


系统为Centos 64位

第一步:从http://nginx.org/download/上下载相应的版本(或者wget http://nginx.org/download/nginx-1.5.9.tar.gz直接在Linux上用命令下载)

第二步:解压tar -zxvf nginx-1.5.9.tar.gz

第三步:设置一下配置信息./configure --prefix=/usr/local/nginx ,或者不执行此步,直接默认配置

第四步:

make编译 (make的过程是把各种语言写的源码文件,变成可执行文件和各种库文件)

make install安装 (make install是把这些编译出来的可执行文件和库文件复制到合适的地方)

在配置信息的时候,也就是在第三步,出现了一下错误:

错误为:./configure: error: the HTTP rewrite module requires the PCRE library.

安装pcre-devel解决问题


yum -y install pcre-devel

还有可能出现:

错误提示:./configure: error: the HTTP cache module requires md5 functions


from OpenSSL library. You can either disable the module by using


--without-http-cache option, or install the OpenSSL library into the system,


or build the OpenSSL library statically from the source with nginx by using


--with-http_ssl_module --with-openssl=<path> options.

解决办法:

yum -y install openssl openssl-devel

安装后在linux下启动和关闭nginx:

启动操作

/usr/nginx/sbin/nginx(/usr/nginx/sbin/nginx-t查看配置信息是否正确)

停止操作


停止操作是通过向nginx进程发送信号(什么是信号请参阅linux文章)来进行的


步骤1:查询nginx主进程号


ps-ef|grepnginx


在进程列表里面找master进程,它的编号就是主进程号了。


步骤2:发送信号


从容停止Nginx:


kill-QUIT主进程号


快速停止Nginx:


kill-TERM主进程号


强制停止Nginx:


pkill-9nginx


另外,若在nginx.conf配置了pid文件存放路径则该文件存放的就是Nginx主进程号,如果没指定则放在nginx的logs目录下。有了pid文件,我们就不用先查询Nginx的主进程号,而直接向Nginx发送信号了,命令如下:


kill-信号类型'/usr/nginx/logs/nginx.pid'


平滑重启


如果更改了配置就要重启Nginx,要先关闭Nginx再打开?不是的,可以向Nginx发送信号,平滑重启。


平滑重启命令:


kill-HUP住进称号或进程号文件路径

或者使用

/usr/nginx/sbin/nginx-sreload

注意,修改了配置文件后最好先检查一下修改过的配置文件是否正确,以免重启后Nginx出现错误影响服务器稳定运行。判断Nginx配置是否正确命令如下:


nginx-t-c/usr/nginx/conf/nginx.conf

或者

/usr/nginx/sbin/nginx-t

如下图:


相关内容

    暂无相关文章