必须修改三处:Apache的Listen端口、httpd-vhosts.conf中VirtualHost端口及DocumentRoot权限配置、Emlog的config.php中$db_host添加MySQL新端口,缺一不可,否则导致访问失败或数据库连接拒绝。
能直接做,但必须改三处配置:Apache监听端口、虚拟主机定义、MySQL连接端口,漏任何一处都会导致访问失败或数据库报错。
修改 Apache 的 Listen 端口和启用 vhosts
Emlog 默认走 80 端口,但本地常被 Skype、IIS 或其他服务占用。XAMPP 不会自动监听新端口,必须手动加
指令。
打开
,找到
,在其下方添加你要的端口,比如:
确认
这行开头的
已删除(即已启用虚拟主机支持),否则后续配置无效
如果只配端口不配
,请求会落到默认站点(
根目录),而不是你的 emlog 目录
在 httpd-vhosts.conf 中定义 Emlog 的端口站点
仅改
不够,Apache 还得知道“这个端口该把请求交给哪个目录”。这靠
里的
块实现。
编辑
,在末尾添加完整块(注意路径用正斜杠或双反斜杠):
必须是 emlog 解压后的**绝对路径**,结尾不能带斜杠;
是必须的,否则 Emlog 的伪静态(如文章链接 /post/123)会 404
若跳过
权限段,访问时大概率报
同步调整 MySQL 端口并更新 Emlog 配置
知识库提到你把 MySQL 改成了
端口,但 Emlog 安装时默认连
。不改,安装页卡在“连接数据库失败”或提示
。
Emlog 的数据库配置文件是
(安装后生成)或安装过程中的表单
找到
这一行,在它后面加端口:
如果用的是 socket 连接(如
),则不能写端口号,得换回
并显式指定端口:
PHP 的
扩展对
支持不稳定,优先用
验证与常见失败点
改完别急着刷浏览器——先让 Apache 自检配置是否合法,否则服务根本启不起来。
在 XAMPP 控制面板点击
,检查
和
路径无拼写错误
命令行进到
,运行
。返回
才算过关;报错就按提示定位行号
启动 Apache 后,访问
显示 emlog 安装页 ≠ 成功——要真能走完安装流程、登录后台、发一篇日志且 URL 正常渲染,才算端口部署闭环
最容易被忽略的是:改了 MySQL 端口却忘了改
里的
(虽然 Emlog 不依赖它,但 phpMyAdmin 等工具会连不上)
ListenXAMPP\apache\conf\httpd.confListen 80Listen 8083#Include conf/extra/httpd-vhosts.conf#htdocsListenhttpd-vhosts.confXAMPP\apache\conf\extra\httpd-vhosts.conf
ServerName localhost
DocumentRoot "D:/xampp/htdocs/emlog"
Require all granted
AllowOverride All
DocumentRootAllowOverride AllForbidden You don't have permission to access this resource33163306mysqli_connect(): (HY000/2002): Connection refusedemlog\config.php$db_host = 'localhost';$db_host = 'localhost:3316';localhost:/tmp/mysql.sock127.0.0.1$db_host = '127.0.0.1:3316';mysqlilocalhost:端口127.0.0.1:3316Apache → Config → Apache (httpd.conf)ListenvhostsXAMPP\apache\binhttpd -tSyntax OKhttp://localhost:8083php.inimysqli.default_port