You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MacBook Air M1下VS Code调试无法连接localhost:8080求助

MacBook Air M1 下VS Code调试无法连接localhost:8080的排查与解决

问题描述

在MacBook Air M1设备上使用VS Code调试时,点击在Chrome中启动调试,浏览器提示无法连接localhost,错误信息如下:
This site can’t be reached localhost refused to connect.
Try:

Checking the connection
Checking the proxy and the firewall
ERR_CONNECTION_REFUSED

已尝试关闭防火墙、重新启动终端中的Apache服务器、重启电脑、更换Edge浏览器、新增JSON配置文件等操作,但仍无法连接localhost:8080。

排查与解决步骤

1. 确认8080端口是否被占用

  • 打开终端,执行命令:lsof -i :8080
    • 若返回结果显示有进程占用8080,记录对应的PID,执行kill -9 [PID]强制终止进程,再重启调试服务
    • 若无返回结果,说明端口未被占用,继续下一步排查

2. 验证Apache是否监听8080端口

  • 执行命令:netstat -an | grep 8080
    • 检查输出中是否包含*.8080或127.0.0.1:8080的LISTEN状态记录
    • 若无监听记录,打开Apache配置文件/etc/apache2/httpd.conf,确认Listen 8080配置未被注释且无拼写错误
    • 修改配置后执行sudo apachectl restart重启服务,再次验证监听状态

3. 检查VS Code调试配置正确性

  • 打开.vscode/launch.json,确认关键配置项:
    {
        "type": "chrome",
        "request": "launch",
        "name": "Launch Chrome against localhost",
        "url": "http://localhost:8080",
        "webRoot": "${workspaceFolder}"
    }
    
    • 确保url字段的端口为8080,无拼写错误
    • 确认webRoot指向正确的项目根目录
    • 若调试静态文件,可尝试替换配置为"file": "${workspaceFolder}/index.html",直接加载本地文件测试连接

4. 验证本地回路与DNS解析

  • 在终端执行ping localhost和ping 127.0.0.1,确认均能收到正常响应
  • 若ping localhost失败但ping 127.0.0.1成功,检查/etc/hosts文件:
    • 执行sudo nano /etc/hosts,确认包含以下映射:
      127.0.0.1   localhost
      ::1         localhost
      
    • 缺失则添加,按Ctrl+O保存,Ctrl+X退出

5. 查看Apache错误日志定位问题

  • 执行命令查看最近20条错误日志:tail -n 20 /var/log/apache2/error_log
  • 根据日志提示修复问题,比如配置语法错误、文件权限不足等,修复后重启Apache服务

6. 尝试用127.0.0.1替代localhost访问

  • 在浏览器地址栏输入http://127.0.0.1:8080,若能正常访问,说明是localhost的DNS解析问题,按步骤4修复hosts文件即可

内容的提问来源于stack exchange,提问作者dan.the.man

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 13:30:43