問題
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
使得動態庫加載到緩存中
查看是否設置成功: