「自学哈网」nginx无法启动的N种常见错误情况解决教程
nginx无法启动的N种常见错误情况解决教程
注意:以下方案中的编译安装需要写入文件。如果安装了宝塔系统加固等安全软件,需要先关闭再进行,以免权限不足
情况一:报libluajit-5.1.so.2错误如图
luajit.png (17.03 KB, 下载次数: 996)
下载附件
解决方法:
重新编译安装下nginx
依赖没有安装完整
情况二:报错:gd库问题 libgd.so.2
如图
gd.png (18.27 KB, 下载次数: 992)
下载附件
解决方法:安装下依赖gd库
centos系统安装命令:
- yum -y install gd gd-devel
复制代码
ubuntu、debian等linux系统安装命令:
- apt-get install gd gd-devel
复制代码
情况三:报错提示没有这个文件/www/server/total/nginx_log.lua
如图
total.png (26.2 KB, 下载次数: 1003)
下载附件
解决方法:一般将网站监控报表卸载重装一下就可以
情况四:报错:www用户问题
如图
www.png (21.13 KB, 下载次数: 1010)
下载附件
解决方法:新建www用户,服务器命令行执行以下命令新建
- /usr/sbin/groupadd -f www
复制代码
- /usr/sbin/useradd -g www www
复制代码
情况五:报错libjemalloc.so.2问题
如图
libjimalloc.png (11.55 KB, 下载次数: 987)
下载附件
解决方法:卸载编译方式重装一下nginx即可
情况六:报错没有这个文件enable-php.conf
如图
enable-php.conf.png (18.09 KB, 下载次数: 1474)
下载附件
解决方法:在/www/server/nginx/conf新建一个enable-php.conf的文件。文件内容:
location ~ [^/]\.php(/|$)
{
try_files $uri =404;
fastcgi_pass unix:/tmp/php-cgi-74.sock;
fastcgi_index index.php;
include fastcgi.conf;
include pathinfo.conf;
}
注意:文件内容的74是php版本,具体是哪个版本,就改为哪个版本,不能生搬硬套
情况七:ssl证书部署问题导致
如图
ssl证书问题.png (29.7 KB, 下载次数: 913)
下载附件
解决方法:将蓝色框的域名的ssl证书关闭后再重新部署
情况八:报错nginx.conf test failed
如图
nginx.conf test failed.png (12 KB, 下载次数: 1161)
下载附件
解决方法:有安装防火墙的话,卸载重装下nginx防火墙 还不行卸载用编译方式重装nginx
或者将nginx版本直接切换至nginx 1.18或者nginx 1.19
情况九:爆内存
如图
爆内存.png (27.38 KB, 下载次数: 889)
下载附件
排查方法一:
服务命令行执行以下命令看看还剩多少内存
- free -m
复制代码
然后修改nginx.conf
- vim /www/server/nginx/conf/nginx.conf
复制代码
将fastcgi_cache_path /data/www/wordpress/fastcgi/ngx_fcgi_cache levels=2:2 keys_zone=ngx_fcgi_cache:500m inactive=30s max_size=5g;这行的500m改为free内存的数量即可,但是也不要一点不剩
然后保存测试下nginx的配置文件,再重启nginx试试
排查方法二:如果有安装网站加速的话,看看这里如图设置有多大,调小一些试试
092858uhjlvuhva9se95hh.png (41.52 KB, 下载次数: 909)
下载附件
情况十:报错unknown directive
这个需要具体问题具体分析,一般报错会报具体配置文件第几行哪个指令未知
以下为解决问题实例:
报错如图:
未知指令.png (142.59 KB, 下载次数: 911)
下载附件
排查过程:经了解,用户之前用的是apache服务器,目前在使用nginx作为web服务器,因此根据截图判断,用户用了apache的伪静态
解决方法:将apache的伪静态转换成nginx的,问题解决
情况十一 端口占用导致的报错如图
解决方法:服务器命令行执行以下命令排查看看是哪个服务占用了22000端口,一般都是报错80端口被占用
- lsof -i:22000
复制代码
然后
- kii -9 PID
复制代码
注意,这个PID为占用22000端口的进程PID,记得替换,不能生搬硬套哦
红字提醒,如果进程名为sshd,mysqld等环境服务,不要kill,可操作更改端口,以免端口冲突
再重启nginx
- /etc/init.d/nginx start
复制代码
本站所有资源来源于网络,分享目的仅供大家学习和交流!如若本站内容侵犯了原著者的合法权益,可联系邮箱976157886@qq.com进行删除。
自学哈专注于免费提供最新的分享知识、网络教程、网络技术的资源分享平台,好资源不私藏,大家一起分享!
自学哈网 » 「自学哈网」nginx无法启动的N种常见错误情况解决教程