在我们的堆栈中,我们有一个来自nginx的连接,它通过套接字将数据传递给瘦服务器。配置文件在我们的测试和培训环境中是相同的,并且通信工作正常,但有些事情已经改变。一个是工作,但另一个不工作。我猜这是一种权限问题,但我没有参与原始设置,所以无法确定。 “unix:”是套接字连接的标准名称,此处需要进行任何其他设置:
这是nginx conf文件的一部分:
upstream thin_cluster {
least_conn;
server unix:/tmp/thin.0.sock;
server unix:/tmp/thin.1.sock;
# Add additional copies if need more Thin servers
server unix:/tmp/thin.2.sock;
server unix:/tmp/thin.3.sock;
}
Nginx错误日志:
2017/05/18 12:03:45 [crit] 1737#0: *1 connect() to unix:/tmp/thin.3.sock failed (2: No such file or directory) while connecting to upstream, client: 10.82.206.61, server: , request: "GET /favicon.ico HTTP/1.1 ", upstream: "http://unix:/tmp/thin.3.sock:/favicon.ico", host: "pptr3", referrer: "http://pptr3/console
/“
2017/05/22 10:49:44 [info] 4717#0: *29 client closed connection while waiting for request, client: 127.0.0.1, server: 0.0.0.0:80
所有这些套接字的权限在两种环境中都是相同的:
-bash-3.2$ ls -ltr thin.?.sock
srwxrwxrwx 1 rhoconnect rhoconnect 0 May 22 04:02 thin.0.sock
srwxrwxrwx 1 rhoconnect rhoconnect 0 May 22 04:02 thin.3.sock
srwxrwxrwx 1 rhoconnect rhoconnect 0 May 22 04:02 thin.2.sock
srwxrwxrwx 1 rhoconnect rhoconnect 0 May 22 04:02 thin.1.sock
我想把一些东西传递给这些套接字以测试它是否按预期工作但不确定如何做到这一点 - telnet或echo | nc但不确定语法或是否期待响应?