【发布时间】:2017-10-26 17:19:36
【问题描述】:
从乘客 1:5.1.5-1~jessie1 更新到这个新版本后。我们在浏览器中收到以下错误:
加载失败 https://aaa.bbb.com/socket.io/?hash=1735f35ec0ad4e4d91618861288467ed&EIO=3&transport=polling&t=LzIr1i8: 请求中不存在“Access-Control-Allow-Origin”标头 资源。因此不允许使用原点“https://aaa.bbb.com” 使用权。响应的 HTTP 状态代码为 404。
nginx错误日志:
2017/10/25 11:42:24 [错误] 638#638: *20 找不到“/export/home/aaa.bbb.com/public/socket.io/index.html” (2:没有这个文件或目录),客户端:111.111.111.111,服务器: aaa.bbb.com,请求:“获取 /socket.io/?hash=1735f35ec0ad4e4d91618861288467ed&EIO=3&transport=polling&t=LzIwLNC HTTP/1.1”,主机:“aaa.bbb.com”,推荐人: "https://ccc.bbb.com/mmmm/zzzz/"
如您所见,我们使用的是 socket.io (1.5.1)。我们的 socket.io 服务器上安装了 node.js (v6.11.5) 和乘客 (5.1.11)。
我们以前从未设置过原点。 web服务器和socket服务器都在同一个域,只是不同的子域。
但可能 nginx 日志中的错误才是真正的问题。
编辑
我已将客户端和服务器端的 socket.io 更新到 2.0.4 版。但我仍然遇到同样的错误
编辑 2
乘客在启动时发生了碰撞。可能是权限问题。
2017/10/25 16:15:59 [info] 315#315: 使用 32768KiB 共享内存 对于 /etc/nginx/nginx.conf:84 中的 nchan [N 2017-10-25 16:15:59.9486 612/T1 age/Wat/WatchdogMain.cpp:1267 ]:启动乘客看门狗... [ E 2017-10-25 16:15:59.9993 617/T1 年龄/Sha/Fun/Initialization.cpp:569 ]: * 错误:无法打开 /var/log/nginx/error.log 进行写入: 权限被拒绝 (errno=13) 在'Passenger::VariantMap Passenger::Agent::Fundamentals::initializeAgent(int, char*, const char*,Passenger::Agent::Fundamentals::OptionParserFunc, 乘客::Agent::Fundamentals::PreinitializationFunc, int)' (初始化.cpp:538)
2017/10/25 16:15:59 [警报] 609#609: 无法启动 Phusion 乘客看门狗,因为它在运行期间遇到了以下错误 启动:无法启动Passenger核心:它似乎已经崩溃 在启动期间由于未知原因,退出代码为 1(-1:未知 错误)
【问题讨论】:
-
请包含您的 nginx 配置和更多日志,尤其是在乘客启动时。
标签: node.js nginx socket.io passenger