Zlibrary图书推荐 zlib热门图书,AI大佬推荐

调试网站

Markdown · 更新于 2026-11-01

curl -I http://127.0.0.1:6000

curl 返回 200,说明服务器完全正常,页面能取到。问题在浏览器那一侧。

最可能的原因:用错了浏览器窗口

如果你是在 Trae 里的内嵌预览/云端浏览器里输这个地址,那大概率打不开——那个浏览器跑在远端沙箱里,访问不到你 Windows 本机的 localhost:6000。

👉 请换成你电脑上本地的 Chrome / Edge,在地址栏手动输入:

http://127.0.0.1:6000

注意几点:

  • 必须是 http://,不能是 https://
  • 不要带斜杠之外的奇怪后缀
  • 换无痕窗口试一次(排除缓存和代理插件干扰)

其他两个常见坑

1. 浏览器代理设置 如果你装了 SwitchyOmega、Clash 之类的代理,localhost 可能被转发出去。在代理插件里把 127.0.0.1 / localhost 加进直连白名单,或直接关掉代理试。

2. Chrome 的「始终使用安全连接」 Chrome 设置 → 隐私和安全 → 安全 → 关掉「始终使用安全连接(HTTPS-First Mode)」,否则它可能把 http 强转成 https 导致失败。

帮我确认一下

浏览器打开时,具体显示的是什么?

  • ERR_CONNECTION_REFUSED(连接被拒绝)→ 多半是你访问的地址/端口不对,或浏览器在远端
  • ERR_EMPTY_RESPONSE / ERR_CONNECTION_RESET → 代理或防火墙干扰
  • 白屏、页面打不开但没报错 → 可能是 JS 报错,按 F12 看 Console
  • 404 / 目录列表 → 服务根目录不对(但你 curl 拿到 2900 字节 HTML,说明目录是对的)

其实可以不用服务器

这个项目零依赖,直接双击 doukyusei-engine 文件夹里的 index.html 就能玩。只有「存档」功能在 file:// 下可能受限——如果你只是先看看画面和操作,双击就够了。

告诉我浏览器里具体的报错文字,我就能定位到底是哪一环。

Answer: 端口 6000 被 Chrome 列入不安全端口黑名单(原来是 X11 图形服务的端口),所以直接拦截,跟你的服务无关。

找到原因了:端口 6000 被 Chrome 拉黑了。

ERR_UNSAFE_PORT 是浏览器主动拦截,不是你的服务有问题。6000 端口原本是 X11 图形服务的端口,Chrome/Edge 把它列进了「不安全端口」黑名单,直接禁止访问。

解决办法:换个端口

在终端按 Ctrl+C 停掉,改用 8000:

python -m http.server 8000 --bind 127.0.0.1

然后打开:

http://127.0.0.1:8000

可用的安全端口(随便挑一个)

端口说明
8000最常用,推荐
8080也常见
5500VS Code Live Server 默认
3000Node 项目常用

⚠️ 别再用的:6000(X11)、6665-6669(IRC)等都被 Chrome 屏蔽了。

换 8000 应该立刻就能打开。

原理

Chrome/Edge 内置一份「禁用端口黑名单」,访问这些端口直接 ERR_UNSAFE_PORT,跟服务是否在跑无关。

黑名单(Chrome/Edge 共用)

list...

安全区

1024–65535 里,排除上面那些,基本都能用。推荐常用端口。

怎么查某端口行不行

3 种方法:

  1. 直接试 —— ERR_UNSAFE_PORT 就是被禁。
  2. 查 Chrome 源码列表(net/base/port_util.cc 的 kRestrictedPorts)
  3. 用固定推荐端口,不用查。

怎么查本机端口是否被占用

Windows: netstat -ano | findstr :8000 或 PowerShell: Get-NetTCPConnection -LocalPort 8000

Also mention Safari similar list, Firefox只禁少量.

Write it. 浏览器的"不安全端口"是内置写死的黑名单,不是动态算出来的。Chrome / Edge / Safari 都有一份,命中就报 ERR_UNSAFE_PORT。

一、Chrome/Edge 的黑名单(完整版)

1, 7, 9, 11, 13, 15, 17, 19, 20, 21, 22, 23, 25, 37, 42, 43, 53, 69,
77, 79, 87, 95, 101-104, 109-111, 113, 115, 117, 119, 123, 135, 137,
139, 143, 161, 179, 389, 427, 465, 512-515, 526, 530-532, 540, 548,
554, 556, 563, 587, 601, 636, 989, 990, 993, 995, 1719, 1720, 1723,
2049, 3659, 4045, 4190, 5060, 5061, 6000, 6566, 6665-6669, 6679, 6697,
10080

这些端口原本都属于别的协议(X11、SMTP、FTP、Telnet、IRC、SMB…),浏览器怕被滥用就禁了。

二、所以哪些能用?

规则很简单:1024 ~ 65535 之间,只要不在上面那个列表里,基本都能用。

日常开发推荐这几个(100% 安全):

端口用途
3000Node / React 常用
5000通用(注意别和 Flask 冲突)
5500VS Code Live Server
8000Python / Django 常用
8080通用 Web
8888Jupyter 常用
9000通用

避开:<1024 的低端口,以及上面那串黑名单。

三、怎么确认某个端口行不行

方法 1:直接试(最快) 浏览器打开 http://127.0.0.1:端口号,看到 ERR_UNSAFE_PORT 就是被禁,ERR_CONNECTION_REFUSED 就是没被禁但没服务在跑(说明端口本身可用)。

方法 2:查官方源码(想确认最新列表) Chrome 的列表写在 src/net/base/port_util.cc 里的 kRestrictedPorts 数组里,搜这个文件名就能看到当前版本的黑名单。

方法 3:不用查 直接固定用 8000 / 8080 / 5500,一劳永逸。

四、顺带:怎么查本机端口有没有被占用

Windows(Git Bash 或 CMD):

netstat -ano | findstr :8000

有输出说明被占用,换一个;没输出说明空闲。

PowerShell:

Get-NetTCPConnection -LocalPort 8000

补充:Firefox 只禁很少几个端口(一般不报这个错);Safari 也有一份类似的黑名单。真正严格的是 Chrome/Edge。


你现在把服务改成 python -m http.server 8000 --bind 127.0.0.1,打开 http://127.0.0.1:8000 就好了。