跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

phpEnv怎么安装FireflyIII phpEnv搭建个人理财系统方法

phpEnv 无法安装 Firefly III,因其仅为 Windows 下 PHP 版本管理器,不提供 Web 服务器、数据库、Composer 依赖解析及必需扩展(如 pdo_mysql、bcmath、openssl),而 Firefly III 是基于 Laravel 的完整 Web 应用,需 Apache/Nginx + MySQL/PostgreSQL + Composer 协同运行。 phpEnv 不能直接安装 Firefly III —— 它不是 PHP 扩展或命令行工具,而是一个完整的 Laravel 应用,必须通过 Composer 构建 + Web 服务器(如 Apache/Nginx)+ 数据库(MySQL/PostgreSQL)协同运行。用 phpEnv 只能提供 PHP 运行环境,其余组件得手动配齐。 为什么 phpEnv 装不上 Firefly III? phpEnv 是 Windows 下的 PHP 版本管理器(类似 macOS 的 phpenv 或 Linux 的 php-version),它只负责切换
php.exe
和扩展(如
pdo_mysql
、
openssl
、
mbstring
),不带 Web 服务器、不带数据库、不带 Composer 自动依赖解析。Firefly III 的
composer install
会失败,因为:
ext-pdo_pgsql
或
ext-pdo_mysql
缺失(phpEnv 默认不启用)
ext-bcmath
、
ext-ctype
、
ext-json
等未开启(Laravel 10+ 强制要求) 没有
php-cgi
或
php-fpm
模块,无法对接 Apache/Nginx 更关键的是:phpEnv 不提供
mysqld.exe
或 PostgreSQL 服务进程 用 phpEnv 搭 Firefly III 的真实路径 你得把 phpEnv 当成“PHP 引擎供应商”,其他全靠自己补全。最小可行组合是: 用 phpEnv 安装并激活 PHP 8.1+(
phpenv install 8.1.28
→
phpenv global 8.1.28
) 手动编辑
php.ini
(位置在
%USERPROFILE%\.phpenv\versions\8.1.28\etc\php.ini
),确保以下扩展已取消注释:
extension=php_pdo_mysql.dll
、
extension=php_openssl.dll
、
extension=php_mbstring.dll
、
extension=php_bcmath.dll
、
extension=php_curl.dll
单独安装 MySQL(推荐 MySQL 8.0.x zip 版,解压后用
mysqld --initialize
初始化,再
net start mysql
启动) 下载 Firefly III 源码(
git clone https://github.com/firefly-iii/firefly-iii.git
),进入目录执行:
composer install --no-dev -o
(注意加
--no-dev
,否则可能因 Windows 下缺少 Python/g++ 编译 node-sass 失败) 复制
.env.example
为
.env
,改关键项:
DB_CONNECTION=mysql
、
DB_HOST=127.0.0.1
、
DB_PORT=3306
、
DB_DATABASE=firefly
、
DB_USERNAME=root
、
DB_PASSWORD=你的密码
执行
php artisan migrate --seed
(首次运行必须带
--seed
,否则登录页空白) Apache / Nginx 怎么接上 phpEnv 的 PHP? phpEnv 本身不集成 Web 服务器,你得选一个并手动关联。最简方案是用 Apache(如 XAMPP 自带的 httpd): 立即学习 “ PHP免费学习笔记(深入) ”; PHP 8.5.5 PHP 8.5.5 是 PHP 8.5 分支的维护更新版本。该版本延续了“小步快跑”的迭代逻辑,通过深度错误修复、底层性能微调以及安全加固,旨在为开发者提供一个更健壮、更高效的运行环境。该版本严格遵守语义化版本规范,不包含破坏性变更。 下载 修改
httpd.conf
,确保加载了
mod_fcgid
(不是
mod_php
!phpEnv 不提供 ts 版 PHP) 添加 FCGI 配置段,指向 phpEnv 的
php-cgi.exe
(路径类似:
C:/Users/xxx/.phpenv/versions/8.1.28/php-cgi.exe
) 在虚拟主机里设置
ScriptAlias /fcgi-bin/ "C:/Users/xxx/.phpenv/versions/8.1.28/"
,再用
FcgidWrapper
绑定
.php
后缀 别忘了给 Firefly III 的
public/
目录设为 DocumentRoot,并开启
AllowOverride All
(让
.htaccess
生效) 如果你跳过这步直接双击
php -S localhost:8000 -t public
,会报错:
Class 'PDO' not found
—— 因为内置服务器不读
php.ini
,扩展不会自动加载。 比 phpEnv 更省事的替代方案 Windows 用户真想快速跑通 Firefly III,建议放弃 phpEnv,改用: Docker Desktop + docker-compose.yml :官方有现成配置,一条
docker-compose up -d
就拉起 PHP + Nginx + Postgres + Redis 全栈,连数据库初始化都自动完成 XAMPP + 手动部署 :XAMPP 自带 Apache/MySQL/PHP,只需确认 PHP 版本 ≥8.1、开启必要扩展、按 Firefly III 文档走
composer install
流程 WSL2 + Ubuntu + Nginx :在 Windows 上跑原生 Linux 环境,兼容性最好,Firefly III 官方文档默认以 Ubuntu 为基准 phpEnv 的价值在于多版本 PHP 切换调试,但 Firefly III 对 PHP 版本容忍度低(只支持 8.1–8.3),一旦配错扩展或漏启服务,排查链路太长——容易卡在
500 Internal Server Error
却查不到日志源头。

相关文章