Apache虚拟主机配置报错:ERR_NAME_NOT_RESOLVED求助
排查Apache虚拟主机ERR_NAME_NOT_RESOLVED错误的步骤
我来帮你一步步定位和解决这个DNS解析失败的问题:
1. 先确认Hosts文件的有效性
- 首先要保证你修改的是Windows系统正确路径的Hosts文件:
C:\Windows\System32\drivers\etc\hosts,很多人会不小心修改副本导致无效。 - 检查条目格式:你的
127.0.0.1 slimapp是正确的,但要确保这是单独一行,IP和域名之间只有单个空格分隔,没有多余字符。 - 必须以管理员权限修改并保存Hosts文件,普通用户权限修改可能无法写入生效。
- 强制刷新系统DNS缓存:打开管理员命令提示符,执行
ipconfig /flushdns,让系统重新读取Hosts配置。
2. 验证Apache虚拟主机配置的正确性
- 检查
httpd-vhosts.conf的细节:- 确认
c:/wamp64/www/slimapp/public/这个路径真实存在,且Apache对该文件夹有读取权限。 - 确保配置的闭合标签
</VirtualHost>没有遗漏(你的代码里已经写了,再核对下)。
- 确认
- 必须重启Apache服务:修改任何Apache配置文件后,都要在WAMP管理器里右键点击Apache选择「Restart Service」,新配置才会生效。
- 如果重启失败,查看Apache错误日志(路径:
c:/wamp64/logs/apache_error.log),日志里会明确提示语法错误或路径问题。
3. 排除浏览器缓存的干扰
- 清空浏览器缓存:按下
Ctrl+Shift+Delete(Chrome/Firefox通用快捷键),选择清空缓存和DNS记录后重新访问slimapp。 - 用隐私窗口(Incognito/Private Mode)访问,避免浏览器缓存的旧DNS记录影响排查。
4. 检查80端口是否被占用
- 打开命令提示符,执行
netstat -ano | findstr ":80",如果结果里有除Apache之外的其他进程PID,说明80端口被占用(比如IIS、迅雷、Skype等)。 - 如果端口被占用,可以修改Apache监听端口:在
httpd.conf里找到Listen 80改成Listen 8080,同时把虚拟主机配置改成<VirtualHost *:8080>,之后访问时用slimapp:8080即可。
5. 排查防火墙/杀毒软件拦截
- 暂时关闭Windows防火墙或第三方杀毒软件,再尝试访问
slimapp。如果能正常打开,说明是防火墙拦截了Apache的请求,需要在防火墙规则里添加Apache程序的允许访问条目。
内容的提问来源于stack exchange,提问作者Guilherme
相关产品推荐
相关产品推荐

