故障排除
使用 static-php-cli 过程中可能会碰到各种各样的故障,这里将讲述如何自行查看错误并反馈 Issue。
下载失败问题
下载资源问题是 spc 最常见的问题之一。主要是由于 spc 下载资源使用的地址一般均为对应项目的官方网站或 GitHub 等,而这些网站可能偶尔会宕机、屏蔽 IP 地址。 在遇到下载失败后,可以多次尝试调用下载命令。
当下载资源时,你可能最终会看到类似 curl: (56) The requested URL returned error: 403
的错误,这通常是由于 GitHub 限制导致的。 你可以通过在命令中添加 --debug
来验证,会看到类似 [DEBU] Running command (no output) : curl -sfSL "https://api.github.com/repos/openssl/openssl/releases"
的输出。
要解决这个问题,可以在 GitHub 上 创建 一个个人访问令牌,并将其设置为环境变量 GITHUB_TOKEN=<XXX>
。
如果确认地址确实无法正常访问,可以提交 Issue 或 PR 更新地址。
doctor 无法修复
在绝大部分情况下,doctor 模块都可以对缺失的系统环境进行自动修复和安装,但也存在特殊的环境无法正常使用自动修复功能。
部分项目由于系统局限(如 Windows 下无法自动安装 Visual Studio 等软件),无法使用自动修复功能。 在遇到无法自动修复功能时,如果遇到 Some check items can not be fixed
字样,则表明无法自动修复,请根据终端显示的方法提交 Issue 或自行修复环境。
编译错误
遇到编译错误时,如果没有开启 --debug
日志,请先开启调试日志,然后确定报错的命令。 报错的终端输出对于修复编译错误非常重要,请在提交 Issue 时一并将终端日志的最后报错片段(或整个终端日志输出)上传,并且包含使用的 spc
命令和参数。