FrankenPHP 项目常见问题解决方案
【免费下载链接】frankenphp The modern PHP app server 项目地址: https://gitcode.com/GitHub_Trending/fr/frankenphp
项目基础介绍和主要编程语言
FrankenPHP 是一个现代的 PHP 应用服务器,基于 Caddy 网络服务器构建。它为 PHP 应用提供了强大的功能,包括 Early Hints、worker 模式、实时能力、自动 HTTPS、HTTP/2 和 HTTP/3 支持等。FrankenPHP 适用于任何 PHP 应用,尤其对 Laravel 和 Symfony 项目有显著的性能提升。
该项目主要使用 PHP 和 Go 语言开发。PHP 用于应用逻辑,而 Go 语言用于服务器和相关功能的实现。
新手使用项目时的注意事项及解决方案
1. 问题:Docker 运行时无法访问应用
详细描述:
新手在使用 Docker 运行 FrankenPHP 时,可能会遇到无法通过 https://127.0.0.1 访问应用的问题。
解决步骤:
- 检查 Docker 容器是否正常运行:
使用docker ps命令查看容器是否正在运行。如果没有运行,使用docker run命令启动容器。 - 使用正确的 URL:
不要尝试使用https://127.0.0.1,而是使用https://localhost。FrankenPHP 默认使用localhost作为域名。 - 接受自签名证书:
由于 FrankenPHP 默认使用自签名证书,浏览器可能会提示不安全连接。点击“高级”选项,选择“继续访问”以接受证书。
2. 问题:无法使用 worker 模式
详细描述:
新手在配置 FrankenPHP 的 worker 模式时,可能会遇到无法启动 worker 的问题。
解决步骤:
- 检查 PHP 版本:
FrankenPHP 需要 PHP 8.4 或更高版本。使用php -v命令检查当前 PHP 版本,确保满足要求。 - 配置 worker 模式:
在项目配置文件中,确保启用了 worker 模式。例如,在config/frankenphp.yaml文件中添加以下配置:worker: enabled: true - 重启 FrankenPHP:
修改配置后,使用docker restart frankenphp命令重启容器,使配置生效。
3. 问题:无法自动获取 HTTPS 证书
详细描述:
新手在使用 FrankenPHP 时,可能会遇到无法自动获取 HTTPS 证书的问题,导致无法通过 HTTPS 访问应用。
解决步骤:
- 检查域名配置:
确保在SERVER_NAME环境变量中正确配置了域名。例如:export SERVER_NAME=myapp.example.com - 检查网络连接:
确保服务器能够访问互联网,以便 Let's Encrypt 自动获取证书。 - 手动获取证书:
如果自动获取失败,可以手动使用certbot工具获取证书,并将证书路径配置到 FrankenPHP 中。
通过以上步骤,新手可以顺利解决在使用 FrankenPHP 项目时遇到的常见问题。
【免费下载链接】frankenphp The modern PHP app server 项目地址: https://gitcode.com/GitHub_Trending/fr/frankenphp
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



