【发布时间】:2019-05-01 10:56:58
【问题描述】:
之前我使用 Cloudflare 并将所有流量从 HTTP 重定向到 HTTPS,但现在由于一些问题我们需要转回 HTTP,并且我们不再使用 Cloudflare, 我们的一些用户仍在访问旧的 HTTPS 网址,他们收到“无法访问此站点”错误 我们正在使用 Apache/2.4.18,我已经尝试了所有建议的修复程序来强制所有 HTTPS 流量到 HTTP,但没有任何效果 这是我的虚拟主机设置
<VirtualHost *:80>
ServerAdmin myemail@live.com
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /var/www/html/mysite.com
CustomLog /var/www/logs/site_Log.log combined
ErrorLog /var/www/error_logs/site_Erro.log
<Directory /var/www/html/mysite.com>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
这是我的 htaccess 设置
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI}
是的,mod_rewrite 已启用
【问题讨论】:
-
必须有一个虚拟主机在端口 443 上侦听(启用 SSL)才能使重写规则起作用。否则你要重写的请求甚至不会被服务器看到...
-
你的意思是default-ssl.conf,这里是default-ssl.conf的设置
#vim: syntax=apache ts=4 sw=4 sts=4 sr noetdefault:443> ServerAdmin webmaster@localhost DocumentRoot /var/www/html SSLOptions +StdEnvVars SSLOptions +StdEnvVars VirtualHost> -
您有有效的 ssl 证书吗?需要 ssl 证书才能将域从
https重定向到http,因为当您使用https方案键入域时,ssl 是在服务器上检查的第一件事,这发生在https到http之前应用重定向 -
我已经安装了 SSL,但还是没有成功
标签: mod-rewrite server apache2.4