常用命令
/usr/local/webserver/nginx/sbin/nginx -s reload # 重新载入配置文件
/usr/local/webserver/nginx/sbin/nginx -s reopen # 重启 Nginx
/usr/local/webserver/nginx/sbin/nginx -s stop # 停止 Nginx
错误信息1
后期添加配置文件后,重新运行报错,(云服务器为centos,最初按照时直接用的默认安装)
错误信息:./configure: error: SSL modules require the OpenSSL library.
解决办法:
# 安装
yum -y install openssl openssl-devel
yum -y install openssl openssl-devel
./configure --prefix=/usr/local/nginx --with-http_ssl_module
错误信息2
# 防火墙问题(也可能是安全组设置的问题)
# 关闭防火墙命令:
systemctl stop firewalld.service
# 开启防火墙:
systemctl start firewalld.service
# 关闭开机自启动:
systemctl disable firewalld.service
# 开启开机启动:
systemctl enable firewalld.service
# 开放80
firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
# 开放1000-2000
firewall-cmd --zone=public --add-port=1000-2000/tcp --permanent
# 查看指定端口被哪个进程占用的情况
netstat -tunlp|grep 端口号
错误信息3
linux下启动nginx报错libpcre.so.0
解决办法:
命令查找nginx动态关联的lib包
ldd $(which /usr/local/nginx/sbin/nginx)
使用关联命令,重新关联
ln -s /usr/local/lib/libpcre.so.0 /lib64
错误信息4 nginx: [error] invalid PID number ; in /usr/local/nginx/logs/nginx.pid
解决办法:
第一步:执行命令 killall -9 nginx 杀掉nginx 进程
第二步:执行命令 /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
第三步:重新加载配置文件,执行命令 ./nginx -s reload
错误信息5
配置ssl报错
nginx: [emerg] unknown directive “ssl” in /usr/local/nginx/conf/nginx.conf:
# 到解压的nginx目录下
./configure --with-http_ssl_module
# nginx之前添加了fastdfs-nginx-module
# ./configure --with-http_ssl_module --add-module=../fastdfs-nginx-module-master/src
make # 不能执行make install 会覆盖
# 把原来nginx备份
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
# 把新的nginx覆盖旧的
cp objs/nginx /usr/local/nginx/sbin/nginx
# 出现错误时cp: cannot create regular file ‘/usr/local/nginx/sbin/nginx’: Text file busy ,使用以下命令解决
# cp -rfp objs/nginx /usr/local/nginx/sbin/nginx
# 测试nginx是否正确
/usr/local/nginx/sbin/nginx -t
# 重启nginx
/usr/local/nginx/sbin/nginx -s reload