meedu 官方不支持 windows 及 phpenv 环境,因其依赖 linux 特性(符号链接、文件权限、systemd/supervisord、pcntl 等);唯一可行方案是使用 wsl2 搭建标准 lemp 栈并按官方流程部署。

phpEnv 是一个面向 Windows 的 PHP 本地开发环境套件(类似 XAMPP、WampServer),它集成了 Nginx/Apache、PHP、MySQL、Redis 等组件,适合快速搭建 PHP 应用。但要注意:MeEdu 官方明确不支持 Windows 环境部署,也不兼容 phpEnv 这类 Windows 封装环境——它的运行依赖 Linux 特性(如符号链接、文件权限、守护进程管理、systemd 或 supervisord),而 phpEnv 无法提供等效的运行时保障。
MeEdu 在 Windows 上用 phpEnv 启动会直接报错
常见失败现象包括:
-
composer install阶段卡在post-autoload-dump脚本(因 Windows 不支持chmod或ln -s) - 访问首页提示
Class 'App\Providers\RouteServiceProvider' not found(自动加载路径解析异常) - 后台上传课程封面失败,报
file_put_contents(): failed to open stream: Permission denied - 队列监听
php artisan queue:work启动即退出(Windows 下无原生pcntl支持,且phpEnv默认禁用)
这些不是配置问题,是底层平台不匹配导致的硬性限制。
如果你坚持要在本地跑 MeEdu,唯一可行路径是 WSL2
phpEnv 不是替代方案,而是绕路陷阱。正确做法是:
- 在 Windows 10/11 中启用 WSL2(推荐 Ubuntu 22.04 LTS)
- 在 WSL2 内使用标准 LEMP 栈:
sudo apt install nginx php8.1-fpm php8.1-mysql php8.1-curl php8.1-xml php8.1-mbstring php8.1-redis composer git - 克隆 MeEdu 源码:
git clone @#@#@#@#@#@#@#@#@#@0 - 按官方文档执行
cp .env.example .env && composer install && php artisan key:generate - 配置 Nginx server block,指向
public/目录,并把root权限设为www-data - 启动队列:
php artisan queue:work --daemon &(或用supervisor管理)
这样才真正复现生产环境行为。
为什么不能“改几行代码让 MeEdu 跑在 phpEnv 上”?
- MeEdu 的视频切片逻辑调用
ffmpeg命令行,依赖 Linux shell 环境和完整 PATH;phpEnv的 cmd 封装层无法透传 - 文件存储驱动默认用
local+symlink实现资源映射,Windows 不支持跨驱动器符号链接 - 日志轮转、计划任务(
php artisan schedule:run)严重依赖 cron,phpEnv无等效机制 - Redis 配置若启用
unixsocket(MeEdu 推荐方式),phpEnv的 Redis 服务默认只监听 TCP
试图打补丁的结果,往往是解决一个报错,冒出三个新错误,最终陷入无限调试。
真正的开发效率,来自环境一致性,而不是强行适配。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











