nginx報(bào)錯(cuò):[emerg] getpwnam(“www“)failed問題及解決
問題現(xiàn)象
今天在使用 nginx 的過程中出現(xiàn)了如下報(bào)錯(cuò):
nginx: [emerg] getpwnam("www") failed

問題分析
從報(bào)錯(cuò)信息可以得知:
報(bào)錯(cuò)是因?yàn)?nginx 在 識(shí)別 "www" 的時(shí)候失敗了!?。?/strong>
乍一看,一臉懵逼,那就先去了解一下 這個(gè) "www" 的什么東西???從網(wǎng)上查閱資料后發(fā)現(xiàn),幾乎所有的文章都提到了:
現(xiàn)象:
安裝 nginx 或 啟動(dòng) nginx 時(shí)報(bào)錯(cuò):
nginx: [emerg] getpwnam("www") failed
原因:
沒有配置 www 這個(gè)用戶名。
解法(2種):
1、在 nginx.conf 中 把 user nobody 的注釋去掉。
2、在服務(wù)器系統(tǒng)中添加 用戶組www 和 用戶www,命令如下:
/usr/sbin/groupadd -f www /usr/sbin/useradd -g www www
看上去 方法2 的改動(dòng)風(fēng)險(xiǎn)會(huì)大一些,為了求穩(wěn),我先去看了 方法1 中提到的 nginx.conf 配置文件:

發(fā)現(xiàn)配置文件中的 user nobody 確實(shí)是被注釋掉了,按照 方法1 所說,那就是要把注釋放開即可。
一切看上去似乎都順利成章,水到渠成!只是我又回頭想了一下,這個(gè) nginx 之前就已經(jīng)在正常使用中,而這個(gè)也是此前在使用的配置,然而之前卻從未出現(xiàn)過問題,現(xiàn)在為什么會(huì)報(bào)錯(cuò)呢?
于是我又分析了一下,我的報(bào)錯(cuò)情況和網(wǎng)上所說的是否有什么區(qū)別!
然后發(fā)現(xiàn)
- 1、我是在執(zhí)行一個(gè) stop 腳本的時(shí)候報(bào)的錯(cuò),而網(wǎng)上說的是在 安裝 nginx 或 啟動(dòng) nginx 時(shí)報(bào)的錯(cuò)。
- 2、www 是用戶名,那是不是跟我當(dāng)前的用戶有關(guān)系?
于是我看了一下目前是 root用戶,而nginx安裝的時(shí)候用的是 自定義的 thp用戶:

于是
我退出了當(dāng)前的 root用戶,回到 thp用戶,再次執(zhí)行 腳本文件就可以了。
解決方法
1、退出當(dāng)前的 root用戶:

2、在 thp用戶下執(zhí)行腳本成功:

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Nginx+PHP(FastCGI)搭建高并發(fā)WEB服務(wù)器(自動(dòng)安裝腳本)第二版
Nginx 0.7.x + PHP 5.2.10(FastCGI)搭建勝過Apache十倍的Web服務(wù)器(第5版) 編寫2011-04-04
在Ubuntu上配置Nginx實(shí)現(xiàn)開機(jī)自啟功能
本文主要介紹了在Ubuntu上配置Nginx實(shí)現(xiàn)開機(jī)自啟功能,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2025-09-09
linux下Nginx+Tomcat負(fù)載均衡配置方法
這篇文章主要介紹了linux下Nginx+Tomcat負(fù)載均衡配置方法,需要的朋友可以參考下2016-09-09
nginx部署多套vue項(xiàng)目,共用一套后端配置過程
文章介紹了如何在一套后端服務(wù)下部署多個(gè)Web應(yīng)用,包括H5頁面和后臺(tái)管理端的配置方法,涵蓋了前端打包、路由配置、Java打包、Nginx配置以及訪問路徑的設(shè)置2025-12-12
Nginx?部署及配置詳細(xì)步驟(附詳細(xì)代碼)
Nginx是一個(gè)web服務(wù)器也可以用來做負(fù)載均衡及反向代理使用,目前使用最多的就是負(fù)載均衡,這篇文章主要介紹了Nginx部署及配置的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-11-11

