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

PHP内置服务器无法访问hosts配置的自定义域名本地站点

问题原因

核心触发点是*.dev属于Chromium内核浏览器(Chrome、Edge等)HSTS预加载列表内的强制HTTPS域名:

  • 只要访问.dev后缀的域名,不管你手动输入的是HTTP还是HTTPS地址,浏览器都会在本地自动将请求跳转到HTTPS 443端口,不会向80端口发送明文HTTP请求。
  • PHP内置Web服务器默认仅支持HTTP协议,没有配置SSL能力,接收到浏览器发来的HTTPS加密请求时无法解析,就会抛出Unsupported SSL request错误。

几个测试现象的对应解释:

  • curl能正常访问:curl不会读取浏览器的HSTS预加载规则,请求HTTP地址时会正常发送明文请求到对应端口,所以可以拿到响应。
  • ping指定端口无法连通:ping基于ICMP协议,本身就不支持端口参数,加端口属于命令用法错误,和服务是否正常运行无关。
解决方案
  • 优先选最省事的方案:更换本地测试域名后缀。不要使用.dev、.app这类已经被纳入公网HSTS预加载列表的顶级域,改用专门保留给本地开发的后缀,比如.test、.localhost、.local。修改hosts对应解析记录后,执行php -S 0.0.0.0:80启动服务,浏览器访问对应HTTP地址即可正常打开。
  • 如果必须使用.dev后缀:给PHP内置服务器配置SSL支持。首先本地生成自签名SSL证书与私钥,编写简单的PHP脚本指定证书路径,启动服务时加载该SSL配置,监听443端口,同时将自签名证书加入系统信任列表,避免浏览器报连接不安全。注意不要尝试通过清除浏览器缓存、手动输入HTTP地址的方式绕过跳转,.dev的HSTS规则是硬编码在浏览器内核里的,本地操作无法跳过强制HTTPS逻辑。

内容的提问来源于stack exchange,提问作者astrononeko

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 00:06:35