2

我正在尝试在没有 SSL 证书的域名上禁用 HTTPS,我正在使用此代码,但它似乎没有做任何事情。我的网站正在运行 Wordpress,并且 wordpress htaccess 工作正常,但 HTTPS 位似乎什么都不是。这是我与 wordpress 的 htaccess 一起使用的代码:

我现在正在使用上面“可能重复”的代码,但它对我不起作用:

    Options +FollowSymlinks

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{SERVER_PORT} ^443$
    RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]

    # BEGIN WordPress
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    # END WordPress
</IfModule>

任何帮助将不胜感激!

4

3 回答 3

1

您正在使用捕获组#1,即$1没有使用方括号捕获组。

将您的代码更改为:

RewriteCond %{HTTPS} on
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]
于 2013-06-18T14:52:32.673 回答
1

服务器上存在阻止重写规则运行的错误配置。我联系了 Host Gator,他们确认他们错误地安装了 SSL 证书,这导致了问题。

谢谢大家的帮助; 我非常感激。

以下是来自 HostGator 的电子邮件,用于此问题的存档目的。

你好,

感谢您联系 Host Gator,我将非常乐意为您提供帮助。

对于由此造成的任何不便,我们深表歉意。

您的 SSL 似乎安装不正确,我们已经更新了您的 SSL IP,您应该没有其他问题。

如果您有任何其他问题,请告诉我们。

问候,伊丽莎白 R. HostGator.com LLC

于 2013-06-18T20:37:24.383 回答
0

**始终使用 https 进行安全连接

将“www.example.com”替换为您的域名(如您的 SSL 证书上所示**)

将此代码放入 .htaccess

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]

参考

于 2019-02-26T13:30:55.190 回答