You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级至MacOS Sonoma后Apache日志出现SwiftNativeNSStringBase错误求助

解决Mac Sonoma 14.2.1下Apache子进程因Swift初始化fork冲突崩溃的问题

问题背景

Mac升级至Sonoma(14.2.1)后,通过Macports搭建的Apache/PHP/MySQL多站点环境中,单个站点无法加载,Apache错误日志报出:

+[__SwiftNativeNSStringBase initialize] may have been in progress in another thread when fork() was called.
+[__SwiftNativeNSStringBase 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.
[core:notice] [pid 6373] AH00052: child pid 6914 exit signal Abort trap (6)

已尝试在.zshrc中添加export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES和export DISABLE_SPRING=true,但均无效。

针对性解决方案

1. 在Apache启动环境中注入变量

Apache作为系统服务启动时,不会读取用户shell的配置文件,需直接在Apache的启动配置中添加环境变量:

  • 进入Macports Apache配置目录:
    cd /opt/local/etc/apache2/
    
  • 创建或编辑envvars文件,添加:
    export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
    
  • 重启Apache服务:
    sudo port unload apache2 && sudo port load apache2
    

2. 排查站点专属PHP扩展

该错误通常由站点依赖的特定PHP扩展触发(尤其是涉及Swift交互或未适配Sonoma的第三方扩展):

  • 对比正常站点与故障站点的PHP扩展列表,通过php -m或phpinfo()输出查看差异
  • 逐个禁用故障站点独有的扩展,定位触发问题的扩展后:
    • 尝试更新该扩展至兼容Sonoma的版本
    • 若为自定义Swift相关扩展,重新编译适配Sonoma的fork机制

3. 切换Apache MPM模式

默认的prefork模式频繁fork子进程,易触发Swift初始化冲突,可切换至event/worker模式(需配合PHP-FPM):

  • 编辑Apache主配置文件httpd.conf,替换MPM模块:
    # 注释掉prefork模块
    # LoadModule mpm_prefork_module libexec/apache2/mod_mpm_prefork.so
    # 启用event模块
    LoadModule mpm_event_module libexec/apache2/mod_mpm_event.so
    
  • 配置Apache反向代理到PHP-FPM(替代mod_php):
    <FilesMatch \.php$>
        SetHandler "proxy:fcgi://127.0.0.1:9000"
    </FilesMatch>
    
  • 重启相关服务:
    sudo port unload apache2 php-fpm && sudo port load apache2 php-fpm
    

4. 更新Macports及组件

确保所有依赖组件适配Sonoma:

  • 更新Macports自身:
    sudo port selfupdate
    
  • 更新所有过时端口:
    sudo port upgrade outdated
    
  • 重启Apache、PHP等服务

内容的提问来源于stack exchange,提问作者belomat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 08:23:39