禁用通过HTTPS访问

时间:2014-07-06 00:40:18

标签: php .htaccess ssl

我目前有一个网站,允许用户创建个人资料并添加他们自己的自定义域名,有效地屏蔽他们的域名。

我刚刚在我的主域上启用了HTTPS,现在当我通过HTTPS访问其完整域名(hisdomain.com)时,它说:The identity of this website has not been verified. Server's certificate does not match the URL.

当检查HTTPS是否在$_SERVER['HTTPS']时,它不会显示HTTP已启用,这是正确的,因为HTTPS不起作用 - 尽管已通过HTTPS访问该URL。

是否可以将所有HTTPS请求重定向到每个域的HTTP,但我自己的(maindomain.com)

通过PHP或HTACCESS,还是通过Apache?

1 个答案:

答案 0 :(得分:1)

  

是否可以将所有HTTPS请求重定向到每个域的HTTP,而不是我自己的

尝试将此添加到您的网络文档根文件夹中的.htaccess文件中(通常为public_htmlhtdocs):

RewriteEngine On
%{HTTPS} on
%{HTTP_HOST} !^(?:www\.)?maindomain\.com
RewriteRule ^ http://%{HTTP_HOST}%{REQUEST_URI} [R=302,L,NE]

如果您对重定向工作感到满意,可以将302更改为301以使其永久化。 这假设mod_rewrite 已为htaccess文件激活。 如果您不确定,要检查是否安装了mod_rewrite,请查看phpinfo();输出中已安装模块的列表 默认情况下,不为htaccess文件启用mod_rewrite。如果您要管理自己的服务器,请打开httpd.conf 并确保webroot目录块包含以下行之一:AllowOverride FileInfoAllowOverride All