答案是:需同步配置虚拟主机与修改hosts文件。先在phpstudy中创建网站并绑定域名和项目目录,再以管理员身份编辑c:\windows\system32\drivers\etc\hosts文件,添加“127.0.0.1 域名”映射,最后重启服务器即可通过自定义域名访问本地php项目。

在 phpStudy 中用自定义域名访问本地 PHP 项目,核心就是两步:配置虚拟主机 + 修改 hosts 文件做本地域名解析。hosts 文件本身不运行服务,但它让浏览器知道“你输的这个域名,其实就指向你本机”。只要配对了,就能像访问真实网站一样打开本地项目。
hosts 文件在哪里?怎么改?
Windows 系统下,hosts 文件路径固定:
C:\Windows\System32\drivers\etc\hosts
它没有扩展名,是纯文本文件,需用记事本或 VS Code 等工具以管理员身份运行后才能保存修改。
打开后,在文件末尾另起一行,按格式添加映射规则:
- 127.0.0.1 myproject.local(对应单个项目)
- 127.0.0.1 admin.test.cn shop.test.cn api.test.cn(多个域名可写在同一行,用空格分隔)
注意:不要加 http://,不要写端口号(除非你用了非 80 端口且没做额外配置),IP 必须是 127.0.0.1。
为什么要配合虚拟主机一起用?
只改 hosts,浏览器能“找到”域名,但服务器不知道该把请求交给哪个项目。phpStudy 默认把所有 80 端口的请求都指向 www 目录首页,所以必须同步完成虚拟主机配置:
- 在 phpStudy 控制面板中进入「网站」→「创建网站」
- 填写的「域名」要和 hosts 里写的完全一致(比如 myproject.local)
- 「根目录」选中你的项目所在文件夹(如 D:\phpStudy\WWW\myproject)
- 端口保持 80(HTTP)或 443(HTTPS),除非你主动改过
保存后,phpStudy 会自动写入 Apache/Nginx 的虚拟主机配置,把域名和目录真正关联起来。
常见问题排查
改完 hosts 和虚拟主机,却打不开?先看这几处:
- 浏览器地址栏直接输 myproject.local,别加 http:// 或 www 前缀
- 确认 phpStudy 中 Apache/Nginx 已重启(不是仅启动,是点「重启」按钮)
- 如果提示 403 Forbidden,检查项目目录是否被系统拒绝读取——右键文件夹 → 「属性」→ 「安全」→ 给 Users 或 Everyone 添加「读取」权限
- 如果页面空白或报 500 错误,打开 phpStudy 的「错误日志」查看具体报错,常因 .htaccess 写错、PHP 扩展缺失或内存不足引起
- 改完 hosts 后仍跳转到默认页,可能是 DNS 缓存未刷新,可在命令提示符中运行 ipconfig /flushdns
多个项目怎么批量管理?
想同时跑 test1.com、test2.com、api.dev,不用反复删改 hosts:
- 在 hosts 末尾一次性加上全部映射,每行一个或空格分隔
- 每个项目都在 phpStudy 中单独创建虚拟主机,域名与目录一一对应
- 若想保留 localhost 访问默认首页,可以额外建一个站点,域名填 localhost,根目录设为 WWW,再注释掉 Apache 配置中多余的 ServerName 行(避免冲突)
这样,三个域名各自指向不同项目,互不干扰,开发调试更清晰。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











