我正在努力解决一些与权限相关的奇怪行为:当我配置 nginx 以侦听端口 8080 时,一切都按预期工作,但是当我使用任何其他端口时,我会得到类似的结果
2014/01/10 09:20:02 [emerg] 30181#0: bind() to 0.0.0.0:8090 failed (13: Permission denied)
Run Code Online (Sandbox Code Playgroud)
在 /var/log/nginx/error.log
我不知道从哪里看,所以我真的不知道配置的哪些部分可能很有趣。
在 nginx.conf 中,nginx 被配置为作为 nginx 运行:
user nginx;
Run Code Online (Sandbox Code Playgroud)
用户 nginx 也在另一个组“git”中
在站点配置中,我试着这样听:
server {
listen 8090; #does not work
#listen 8080; #works
#listen 9090; #does not work
#listen 9090 default; #does not work neighter
#listen 80; #works!
server_name <some IP>;
...
}
Run Code Online (Sandbox Code Playgroud)
我只有一个监听端口 443。
当我启动一些其他服务时,例如SimpleHTTPServer端口 8090 等,作为非 root 一切正常:
$ python -m SimpleHTTPServer 8090
Serving HTTP on 0.0.0.0 port …Run Code Online (Sandbox Code Playgroud)