即使重写规则已被删除,Apache2 仍会继续重写 https

即使重写规则已被删除,Apache2 仍会继续重写 https

我在运行 Ubuntu 14.04 和 Apache2 的本地计算机上运行多个虚拟主机。假设我尝试访问的项目将 ServerName 指令设置为website.local 当我尝试在浏览器中访问它时,website.local浏览器会立即重定向到https://website.local,然后无法连接。

我想我找到了一个潜在的原因,但我不确定。当我第一次设置项目时,它包含一个.htaccess具有以下重写规则的文件

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

这些是在生产环境中安装的。我删除了它们,但问题仍然存在。

作为测试,我设置了一个test.local指向同一项目目录的新虚拟主机,但这次我在 Apache 中启用虚拟主机之前确保了重写规则不存在。这次项目在 上加载没有问题test.local

以我有限的经验来看,Apache 似乎以某种方式“记住”了旧虚拟主机的重写规则。我尝试禁用和启用主机并重新加载 Apache,但没有成功。

我的建议确实是问题所在吗?我该如何解决它?还是我完全忽略了真正的根本问题

相关内容