wampserver添加虚拟目录本质是配置apache virtualhost并绑定hosts,需三步:启用httpd-vhosts.conf、在其中写virtualhost(含servername、documentroot、require all granted)、在windows hosts中添加127.0.0.1域名映射。

WampServer 3.3.5 添加虚拟目录,本质是 Apache 的 VirtualHost 配置 + hosts 绑定,不是“添加”而是“启用并配置”。直接改 httpd-vhosts.conf 和系统 hosts 文件,比在 Wamp 界面点来点去更可靠、更可控。
确认 httpd-vhosts.conf 已启用
WampServer 默认不启用虚拟主机配置。必须先打开 Apache 主配置,取消注释关键行:
- 用 Wamp 图标 → Apache →
httpd.conf - 搜索
Include conf/extra/httpd-vhosts.conf - 删掉该行开头的
#(确保它变成未注释状态) - 保存后必须重启 Apache(不是“Restart All Services”,只需右键图标 → Apache → Restart Service)
在 httpd-vhosts.conf 中写真实可用的 VirtualHost
路径通常是:C:\wamp64\bin\apache\apache2.4.58\conf\extra\httpd-vhosts.conf(版本号依你安装的实际为准)。不要只抄模板,注意三点:
-
ServerName必须和你后续在hosts里写的域名完全一致(比如myapp.test),且不能带http:// -
DocumentRoot路径中的反斜杠要改成正斜杠或双反斜杠,Windows 下推荐用正斜杠:"C:/projects/myapp" -
<directory></directory>块里必须有Require all granted,否则 403 Forbidden 是默认结果;AllowOverride All才能支持 .htaccess
示例(可直接粘贴到文件末尾):
<virtualhost>
ServerName myapp.test
DocumentRoot "C:/projects/myapp"
<directory>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</directory></virtualhost>
绑定域名到本地 IP:改 Windows hosts 文件
这是最容易被跳过的一步。没有这步,浏览器根本不会把 myapp.test 发给本机 Apache:
- 用管理员权限打开记事本(右键 → 以管理员身份运行)
- 菜单栏 → 文件 → 打开 → 路径填:
C:\Windows\System32\drivers\etc\hosts - 在文件末尾追加一行:
127.0.0.1 myapp.test - 保存(若提示无权限,说明没用管理员打开,重来)
验证与排错关键点
改完三处(httpd.conf、httpd-vhosts.conf、hosts),必须按顺序操作:
- 先检查 Apache 错误日志:Wamp 图标 → Apache → Error Logs,看有没有
Syntax error或Invalid command - 再确认 Apache 服务已成功重启(托盘图标变绿,且右键菜单里 Apache → Service → Started 是勾选状态)
- 清空浏览器 DNS 缓存:
chrome://net-internals/#dns→ 点击 “Clear host cache” - 别用
localhost/myapp测试虚拟目录——那是物理子路径,不是虚拟主机;必须用http://myapp.test - 如果仍 404,检查
DocumentRoot路径是否存在、大小写是否和实际文件夹名一致(Windows 不敏感但 Apache 配置里最好保持一致)
虚拟目录生效后,www 目录就只是备用入口,所有开发项目都建议走独立 VirtualHost,避免路由冲突和权限混杂。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











