Phusion 乘客 5.1.12 + OSX 10.13 + 服务器 5.4

Phusion Passenger 5.1.12 + OSX 10.13 + Server 5.4

自升级到 10.13 后,我在使用 Phusion Passenger 时一直遇到问题。我已经阅读了几篇关于这个问题根本原因的文章(坦率地说,其中大部分都超出了我的理解范围)但我的印象是 Passenger 5.1.12 应该可以解决这个问题。尽管如此,它对我来说并没有,Apache 崩溃并显示以下日志条目:

httpd[31444]: objc[31444]: +[__NSCFConstantString initialize] may have been in progress in another thread when fork() was called. We cannot safely call it or ignore it in the fork() child process. Crashing instead. Set a breakpoint on objc_initializeAfterForkError to debug.

如有指点,将不胜感激!

如果您想坚持使用 Apache,直到 Apple 修补他们的构建,apparently your options current are 到:

  • 使用非系统apache(所以没有apple的补丁)
  • 将 OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES env var 设置为 apache launchd plist(需要禁用 SIP)
  • 如果您的应用可以,请将 PassengerHighPerformance 添加到您的虚拟主机 那样工作
  • 使用区分大小写的文件系统(需要全新安装 macOS)

None 其中听起来对我特别有吸引力,所以我安装并迁移到了 nginx(无论如何我一直想这么做,现在已经有一段时间了)。