phpEnv中Apache和MySQL显示红色因端口被占或配置冲突,需修改端口并启用gd、pdo_mysql、curl、openssl扩展,数据库主机填127.0.0.1,开启mod_rewrite及AllowOverride All,推荐使用PHP 7.3.30。

phpEnv启动后Apache和MySQL一直红色?
服务无法启动,基本就是端口被占或配置冲突。phpEnv默认用80和3306,但Windows上IIS、Skype、甚至某些杀软会抢80端口;MySQL也可能被已装的其他版本(如XAMPP、Docker)占用。
实操建议:
立即学习“PHP免费学习笔记(深入)”;
- 点击phpEnv主界面右上角「配置」→「端口检测」,看80和3306是否显示“被占用”
- 若被占,进「配置」→「Apache」→ 修改
httpd.conf里所有Listen 80为Listen 8081;同理改httpd-ssl.conf的443为4433 - MySQL端口在「配置」→「MySQL」→ 修改
my.ini中的port=3306为port=3307 - 改完重启phpEnv,再点「启动」——绿色才代表真正跑起来了
微擎上传后访问/install.php报500或空白页?
这不是微擎的问题,是phpEnv没开关键扩展。微擎依赖gd、pdo_mysql、curl、openssl这四个扩展,缺一个就卡在安装页。
实操建议:
立即学习“PHP免费学习笔记(深入)”;
- 进「配置」→「PHP」→ 打开
php.ini - 搜索
extension=gd,去掉前面分号(如;extension=gd2→extension=gd) - 同样处理:
extension=pdo_mysql、extension=curl、extension=openssl - 保存后必须「重启Apache」,否则修改不生效
- 验证方法:在站点根目录放一个
info.php,内容为<?php phpinfo(); ?>,浏览器访问看对应扩展是否显示“enabled”
安装时提示“数据库连接失败”,但用户名密码没错?
phpEnv的MySQL默认绑定127.0.0.1,而微擎安装页填localhost在部分PHP版本下会走socket而非TCP,导致连不上。
实操建议:
立即学习“PHP免费学习笔记(深入)”;
- 数据库主机直接填
127.0.0.1:3307(如果你改了MySQL端口) - 别用
localhost,也别留空 - 确保MySQL服务已启动(phpEnv面板里MySQL是绿色)
- 检查MySQL用户权限:phpEnv自带的root用户默认无密码,但有些新版phpEnv会设默认密码
root,安装时就填这个 - 如果还失败,在MySQL命令行执行:
CREATE DATABASE we7 DEFAULT CHARSET utf8mb4;,再试
安装完成但后台打不开、页面跳转404?
微擎依赖伪静态,而phpEnv默认没开mod_rewrite,或者没配.htaccess规则,导致路由失效。
实操建议:
立即学习“PHP免费学习笔记(深入)”;
- 进「配置」→「Apache」→ 打开
httpd.conf - 找到
#LoadModule rewrite_module modules/mod_rewrite.so,删掉开头的# - 再找
<Directory "/path/to/your/site">段(实际路径是你的站点根目录),把里面的AllowOverride None改成AllowOverride All - 重启Apache
- 确认站点根目录下存在
.htaccess文件(微擎安装完自动生成),且内容包含重写规则



















