2015-08-15 73 views
1

我在Debian 7(wheezy)上安裝了nginx 1.6.0,現在我想在Debian 8(Jessie)上安裝nginx。這個新的nginx的版本是1.6.2。我複製了舊版本的配置文件nginx.conf到新的服務器,但是當我嘗試啓動該服務,它失敗:debian 8中的用戶'nginx'在nginx中的位置

service nginx restart 

輸出:

nginx nginx[10743]: nginx: [emerg] getpwnam("nginx") failed in /etc/nginx/nginx.conf:1 

我知道我的問題是第一行nginx.conf

user nginx; 

我知道的太多,如果我改變了這一行user www-data,問題就會消失,但爲什麼會這樣呢?我也使用nginx作爲負載平衡器而不是web服務器。

回答

1
$ man getpwnam 

的getpwnam()函數返回一個指針,指向包含在密碼數據庫中的記錄(例如, 本地密碼文件/ etc/passwd中,NIS和的 斷開的字段的結構LDAP),它與用戶名稱相匹配。

用戶nginx不存在。您可以創建它,也可以使用www-data作爲用戶。

+0

是的,你說得對。在這個新版本的'nginx'中,配置文件'default'已經到了'sites-available'目錄,但是我的舊配置文件在'conf.d'目錄下。事實上,我的問題是,但我不明白,我猜想這個問題在新版本中沒有用戶'nginx'。無論這些說明如何,我感謝您的指導。 –