Skip to content

比较

FlyEnv vs XAMPP 共享堆栈,还是每个项目独立环境?

XAMPP 是适合通用场景的简单一体化 PHP 堆栈。FlyEnv 让每个本地项目使用所需的运行时、Web 服务器、数据库和服务。

macOS Windows Linux 免费且开源
X

XAMPP

所有项目共享一个堆栈

ApacheApache
PHPPHP
MariaDBMariaDB

htdocs

(一个网站根目录)

/project-a

/project-b

/project-c

所有项目共享相同的堆栈和配置。

F

FlyEnv

每个项目独立环境

项目 A · Laravel

NginxNginx
PHP 8.3PHP 8.3
MySQLMySQL
RedisRedis

项目 B · WordPress

ApacheApache
PHP 7.4PHP 7.4
MariaDBMariaDB
MMailpit

项目 C · Node.js 应用

CaddyCaddy
Node.jsNode.js
PostgreSQLPostgreSQL
MinIOMinIO

每个项目拥有独立的运行时、服务、端口和配置。

三个实际差异

不仅是堆栈不同,更是开发方式不同。

01

多版本运行时

可并行运行不同版本的 PHP、Node.js、Python 等,同时保持项目彼此独立。

PHP 7.4 | PHP 8.1 | PHP 8.3
02

按项目构建所需堆栈

选择 Nginx、Apache、Caddy、数据库、缓存、邮件测试、对象存储或自定义项目服务。

Nginx + PHP + MySQL + Redis
03

自定义域名和 HTTPS

为每个本地站点设置独立域名,并在一个地方管理证书、端口、重写规则和日志。

https://shop.test

共享堆栈 vs 每个项目独立环境

理念相近,开发体验却完全不同。

X

XAMPP

共享 PHP 堆栈

ApacheApache
PHPPHP
MariaDBMariaDB
phpMyAdminphpMyAdmin
htdocs (一个网站根目录)
/project-a/project-b/project-c
  • 项目通常共享相同的运行时版本。
  • 不同需求需要额外配置。
  • 运行时和服务器配置通常是共享的。
F

FlyEnv

按项目划分的环境

项目 A

NginxNginx

PHP 8.3PHP 8.3

MySQLMySQL

RedisRedis

项目 B

ApacheApache

PHP 7.4PHP 7.4

MariaDBMariaDB

MMailpit

项目 C

CaddyCaddy

Node.jsNode.js

PostgreSQLPostgreSQL

MinIOMinIO

  • 每个项目可匹配所需的运行时和服务。
  • 本地站点、端口、日志和 HTTPS 集中管理。
  • 项目需要时可同时启动相关服务。

日常开发中的实际体验

通过 FlyEnv 的运行时、站点和服务工作流查看相同的配置。

FlyEnv 本地站点 HTTPS 配置界面

本地域名和 HTTPS

创建带自定义域名的本地站点并管理证书,无需遵循 htdocs 约定。

探索本地站点 →
FlyEnv 服务管理界面

全栈本地服务

在项目旁运行数据库、缓存、邮件测试、对象存储等服务。

查看项目环境 →

功能对比

常用本地开发能力的实用对比。

能力XAMPPFlyEnv
Apache可用内置可用内置选项
PHP可用捆绑版本可用多个托管版本
MariaDB / MySQL可用包含 MariaDB可用多个数据库模块
phpMyAdmin可用已捆绑可用可通过本地工具使用
Nginx未包含未包含可用内置选项
Caddy未包含未包含可用内置选项
PostgreSQL未包含未包含可用内置模块
Redis需手动配置需额外安装可用内置模块
Node.js / Python / Go未包含未包含可用内置运行时模块
本地自定义域名需手动配置手动配置可用内置站点工作流
本地 HTTPS需手动配置需手动或额外配置可用托管的本地站点工作流
启动组需手动配置不可用可用内置项目服务
邮件测试需手动配置需额外安装可用Mailpit 模块
数据库图形工具可用phpMyAdmin可用phpMyAdmin、pgAdmin、DbGate、Redis Commander
AI / MCP 集成未包含未包含可用FlyEnv MCP 服务器和 AI CLI 模块

典型 Laravel 开发流程

这些环境在实际使用中的一种常见差异。

使用 XAMPP

1

启动 Apache 和 MariaDB。

使用 FlyEnv

1

创建或导入本地站点。

使用 XAMPP

2

将项目放入或链接到本地网站根目录。

使用 FlyEnv

2

选择 PHP 版本,并选择 Apache、Nginx 或 Caddy。

使用 XAMPP

3

使用捆绑的 PHP 版本并配置应用。

使用 FlyEnv

3

添加自定义域名,并在需要时启用本地 HTTPS。

使用 XAMPP

4

需要自定义域名时配置虚拟主机。

使用 FlyEnv

4

启动 Redis、Mailpit 或其他项目服务。

使用 XAMPP

5

需要时单独配置 HTTPS、Redis 或邮件测试。

使用 FlyEnv

5

如有需要,将相关服务保存为启动组。

应该选择哪一个?

两款工具都有用,正确选择取决于项目组织方式。

选择 XAMPP 的情况

  • 希望使用熟悉的 Apache + PHP + MariaDB 套件。
  • 项目可以使用大致相同的 PHP 环境。
  • 主要开发传统 PHP 应用。
  • 偏好简单、成熟的本地堆栈。

选择 FlyEnv 的情况

  • 项目需要不同版本的 PHP、Node.js 或其他运行时。
  • 使用 Nginx、Caddy、PostgreSQL、Redis 或其他本地服务。
  • 希望在一个地方管理自定义域名和 HTTPS。
  • 使用 AI 编程客户端或 Ollama 等本地 AI 服务,并希望与项目堆栈一起管理。

两者都是有效选择——关键在于你需要简单的共享 PHP 堆栈,还是项目专属环境。

从 XAMPP 迁移到 FlyEnv

迁移现有项目很简单,大多数情况下无需重写应用。

1

移动项目

将项目移动或保留在任意位置,不再必须放在 `htdocs` 中。

2

创建本地站点

在 FlyEnv 中导入或创建站点,并选择所需的运行时和服务设置。

3

导入数据库

使用文档中的凭据导入数据库转储,然后运行应用测试并调整扩展或环境变量。

需要更多背景?阅读 FlyEnv 与 Docker、XAMPP 的综合指南.

常见问题

需要修改项目代码吗?

通常不需要。重新创建本地运行时、站点、数据库和环境变量,然后运行应用测试即可开始日常工作。

必须将项目移出 htdocs 吗?

不需要。FlyEnv 可以使用现有项目目录,不要求项目位于 XAMPP 网站根目录内。

FlyEnv 还能使用 Apache 吗?

可以。Apache 与 Nginx、Caddy 一样可用于本地站点和项目服务。

FlyEnv 能完全替代 XAMPP 吗?

它可以替代许多项目的本地工作流,但生产环境容器一致性或团队标准可能仍需要其他工具。

不同项目可以运行不同 PHP 版本吗?

可以。FlyEnv 可管理多个 PHP 版本,并将项目或本地站点绑定到所需版本。

XAMPP 适合团队使用吗?

如果团队遵循相同的软件包和网站根目录约定,它可以成为传统 PHP 应用的实用共享基线。

FlyEnv 本地开发免费吗?

FlyEnv 免费且开源,详情请参阅许可证指南。

XAMPP 使用 MySQL 还是 MariaDB?

Apache Friends 当前文档显示,新版 XAMPP 使用 MariaDB,并兼容常见的 MySQL 工作流。

在 FlyEnv 中尝试下一个项目

创建本地站点,选择所需的运行时和服务,然后开始工作。