我正在尝试将我的 Rails 应用程序部署到与 Debian 一起运行的新 VPS。我使用 Nginx 和 Phusion Passenger 作为我的服务器。
我已将 Node.js 安装为 JavaScript 运行时。可悲的是,我看到以下错误消息:
Fatal error in v8::V8::AddGCPrologueCallback()
V8 is no longer usable
编辑:
现在已修复。显然 gr security 导致了错误。
我正在尝试将我的 Rails 应用程序部署到与 Debian 一起运行的新 VPS。我使用 Nginx 和 Phusion Passenger 作为我的服务器。
我已将 Node.js 安装为 JavaScript 运行时。可悲的是,我看到以下错误消息:
Fatal error in v8::V8::AddGCPrologueCallback()
V8 is no longer usable
编辑:
现在已修复。显然 gr security 导致了错误。
问题发生在具有 grsecurity 和某些限制性规则的内核上。
node.js 需要在服务器不喜欢的某些内存区域执行代码。
您似乎需要为“节点”二进制文件切换两个标志。
此外,您可能需要为您的 ruby 二进制文件切换它们。
paxctl -S `which node` && paxctl -S `which ruby`
paxctl -m `which node` && paxctl -m `which ruby`
node -e "console.log(1+1);"
有趣的事实是,我现在可以关闭 SEGMEXEC 并且节点仍然可以工作:S ... 但是打开它似乎最初为我修复了它。如果它不起作用,请使用标志并尝试 node -e
祝你好运!
吉兹莫尔