问题
nginx编译安装之后,启动出现了:nginx: [emerg] getpwnam("nginx") failed
这个是因为我编译安装nginx的时候指定了--user=nginx
和--group=nginx
,去除就没事了
但是出于安全性考虑,还是用独立权限的账户运行(root权限太大,web渗透的时候可利用的机会太多了)
解决
useradd -s /sbin/nologin -M nginx
再运行又报了一个错:mkdir: 无法创建目录"/var/cache/nginx/client_temp":
PS:改成了单独的nginx用户权限,有些目录就没权限了,手动创建下就行了
[root@localhost nginx-1.16.0]# nginx
nginx: [emerg] mkdir() "/var/cache/nginx/client_temp" failed (2: No such file or directory)
[root@localhost nginx-1.16.0]# mkdir /var/cache/nginx/client_temp
mkdir: 无法创建目录"/var/cache/nginx/client_temp": 没有那个文件或目录
解决:mkdir -p /var/cache/nginx/client_temp
可以使用:id nginx
来查看权限组
uid=1001(nginx) gid=1001(nginx) 组=1001(nginx)
扩展:nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory
很多同志安装lua的时候经常遇到这个错误:nginx: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory
root权限下可以这么设置:echo "/usr/local/LuaJIT/lib" >> /etc/ld.so.conf
然后再运行ldconfig
使得动态库加载到缓存中
查看是否设置成功: