登录
首页 >  文章 >  php教程

XAMPP配置多域名Apache教程

时间:2026-04-27 09:44:22 395浏览 收藏

本文详解XAMPP环境下Apache多域名配置的核心要点与常见陷阱,强调VirtualHost必须严格对齐域名、文档根路径和端口三要素,否则极易触发403/404错误或请求错配;重点揭示三大易漏关键:启用httpd-vhosts.conf的Include指令、在配置文件开头设置localhost兜底站点以避免默认路由混乱、以及系统hosts文件精准映射到127.0.0.1;同时提醒DocumentRoot使用无尾斜杠的绝对路径、验证配置语法(httpd -t)、清除DNS缓存等实操细节——每一步都直击新手反复踩坑的痛点,助你一次性配通多个本地域名站点。

XAMPP配置Apache多域名指向同一IP XAMPP虚拟主机设置

VirtualHost 配置必须三者对齐:域名、路径、端口,缺一不可。否则浏览器打不开、403/404频发,或者所有请求都落到第一个站点。

确认 httpd-vhosts.conf 已被 Apache 加载

这是最常被跳过的一步,也是多域名失效的头号原因。

  • 打开 XAMPP\apache\conf\httpd.conf
  • 搜索 Include conf/extra/httpd-vhosts.conf
  • 确保该行**前面没有 #**;如果有,删掉
  • 保存后必须重启 Apache(XAMPP 控制面板 Stop → Start,别只点 Restart)

不执行这步,httpd-vhosts.conf 里写多少个 VirtualHost 都不会生效。

httpd-vhosts.conf 中的 VirtualHost 顺序决定默认路由

Apache 按照配置文件中出现的顺序匹配 ServerName;没匹配上的请求,会落到**第一个 VirtualHost 块**。所以直接把新站点追加到文件末尾,很可能导致 localhost 打开的是你的项目而不是 XAMPP 首页。

  • httpd-vhosts.conf 最开头显式加一个兜底配置:
    <VirtualHost *:80><br>    DocumentRoot "C:/xampp/htdocs"<br>    ServerName localhost<br></VirtualHost>
  • 再在后面添加你的自定义站点,例如:
    <VirtualHost *:80><br>    DocumentRoot "D:/projects/blog"<br>    ServerName blog.local<br></VirtualHost>
  • DocumentRoot 必须是绝对路径,结尾**不能有斜杠**(D:/projects/blog ✅,D:/projects/blog/ ❌)
  • Windows 路径中用正斜杠 / 或双反斜杠 \\,单反斜杠 \ 会导致 Apache 启动失败

系统 hosts 文件必须映射到 127.0.0.1

浏览器根本不会查 DNS,它只认 hosts 文件里的记录。跳过这步,输 blog.local 就是“无法访问此网站”。

  • 用管理员权限打开:C:\Windows\System32\drivers\etc\hosts
  • 每行一个映射,格式严格为:127.0.0.1 blog.local
  • 不要写 localhost127.0.0.1 以外的 IP
  • 改完保存即可,无需重启系统;但建议用无痕窗口或清 DNS 缓存:ipconfig /flushdns

验证配置语法再重启 Apache

写错一个引号、漏一个尖括号,Apache 就起不来,XAMPP 控制面板的 Start 按钮会瞬间变灰,毫无提示。

  • 打开命令行(CMD 或 PowerShell),cd 到 XAMPP\apache\bin
  • 运行:httpd -t
  • 如果输出 Syntax OK,说明配置合法;否则按错误行号去修
  • 别依赖 XAMPP 的 “Restart” 按钮——它有时跳过重载,务必先 Stop 再 Start

最容易被忽略的是:修改 hosts 后没清 DNS 缓存,或 httpd-vhosts.conf 里漏了 权限块,导致 403 Forbidden;这两处问题不会报错,但站点就是打不开。

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于文章的相关知识,也可关注golang学习网公众号。

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>