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

XAMPP虚拟主机(vhosts)异常重定向至HTTPS问题求助

解决自定义域名访问时被强制HTTPS重定向的问题

你遇到的这个情况很典型,除了Edge外其他浏览器都跳HTTPS,主要是.dev域名的特殊性和浏览器的安全机制在起作用,咱们一步步来排查解决:

1. 先处理浏览器的HSTS强制规则

.dev是Google注册的正式顶级域名,Chrome、Firefox、Safari这些主流浏览器默认会强制所有.dev域名使用HTTPS,这是通过HSTS(HTTP严格传输安全)机制实现的,哪怕你本地没配置SSL也会自动跳转。

解决方法:

  • Chrome/Opera: 在地址栏输入 chrome://net-internals/#hsts,找到「Delete domain security policies」,输入xxx.dev后点击「Delete」,清除该域名的HSTS缓存。
  • Firefox: 地址栏输入 about:config,搜索 network.stricttransportsecurity.preloadlist,临时把它设为false(测试完如果需要可以改回来);或者直接清除浏览器的「Cookie和站点数据」,确保选中包含站点权限的选项。
  • Safari: 打开「偏好设置」→「隐私」→「管理网站数据」,搜索xxx.dev并删除对应的条目。

2. 检查项目代码里的强制HTTPS逻辑

你的项目(2018_xxx.de/public)里可能自己加了重定向规则,比如:

  • PHP代码里写了强制跳HTTPS的header函数
  • .htaccess文件里用mod_rewrite做了全局重定向

打开项目根目录的.htaccess文件,看看有没有类似这样的规则,如果有,暂时注释掉(加#)或者删除:

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

3. 排查Apache的SSL模块是否意外开启

如果XAMPP的Apache启用了SSL模块,可能会触发全局的HTTPS相关规则。打开XAMPP的httpd.conf文件,检查下面这行是否被注释(前面有#):

# LoadModule ssl_module modules/mod_ssl.so

如果没有#,说明SSL模块是开着的,你可以注释掉它,然后重启Apache服务。不过注意,这会影响所有需要SSL的站点,所以优先用前面的方法,这个作为备选。

4. 最省心的方案:更换测试域名后缀

既然.dev被浏览器强制HTTPS,不如直接换个不会被强制的后缀,比如.test或者.local:

  • 修改httpd-vhosts.conf里的ServerName为xxx.test
  • 修改hosts文件里的映射为127.0.0.1 xxx.test
  • 重启Apache,清除浏览器缓存后访问http://xxx.test,应该就不会跳HTTPS了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 03:41:47