有人能解释一下我的 nginx 错误日志中的以下行吗?我试图让 Perl 和 Nginx 相互通信,但到目前为止还没有成功。
unix:/var/run/nginx/cgiwrap-dispatch.sock failed (111: Connection refused)2011/11/20 09:18:34 [error] 24054#0: *1186 connect() to unix:/var/run/nginx/cgiwrap-dispatch.sock failed (111: Connection refused) while connecting to upstream, client: 150.101.221.75, server: example.com, request: "GET /dspam.cgi HTTP/1.1", upstream: "fastcgi://unix:/var/run/nginx/cgiwrap-dispatch.sock:", host: "example.com"
相关的 nginx 配置。
location ~ \.cgi$ {
gzip off;
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/var/run/fcgiwrap.socket;
fastcgi_index index.pl;
fastcgi_param SCRIPT_FILENAME /var/www/dspam$fastcgi_script_name;
}
答案1
我还没有遇到过连接被拒绝的情况,但我的猜测是 nginx 进程没有写入 /var/run/nginx/cgiwrap-dispatch.sock 的用户权限,请检查文件权限和用户。
如果是 Debian 用户很可能是 www-data。