【问题标题】:SSL Error: how to redirect https://www.domain.com to http://domain.com via .htaccess to avoid SSL errorSSL 错误:如何通过 .htaccess 将 https://www.domain.com 重定向到 http://domain.com 以避免 SSL 错误
【发布时间】:2014-05-26 09:44:32
【问题描述】:

我在访问 https://www 时遇到了我们网站的问题。领域。 com 出现“此连接不受信任”警告,如果在浏览器中键入 https://www.domain.com /nameofpage/s,则无法找到页面。但如果是 https://domain.com/ nameofpage/s

,一切都很好

我们的证书详情:
购买地址:http://www.ssls.com/
通用名称是:domain.com

这就是我的 .htaccess 的样子:

<IfModule mod_rewrite.c>
RewriteEngine on
Options +FollowSymLinks
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1

RewriteCond %{HTTP_HOST} ^www.domain.com$ [NC]
RewriteRule ^(.*)$ http://domain.com/$1 [R=301,L]

RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} (auth|register|report|bootstrap)
RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301]

RewriteCond %{HTTPS} on
RewriteCond %{HTTPS_HOST} ^www.domain.com$ [NC]
RewriteRule ^(.*)$ https://domain.com/$1 [R=301,L]

</IfModule>
<IfModule !mod_rewrite.c>
ErrorDocument 404 /index.php
</IfModule>

【问题讨论】:

    标签: php apache .htaccess redirect ssl


    【解决方案1】:

    因为 domain.com 与 www.domain.com 不匹配,所以它不会进行 SSL 连接。并且因为 HTTP 重定向只能在 SSL 连接建立后进行,所以它不能进行重定向。您唯一的机会是获得包含 domain.com 和 www.domain.com 的证书。

    【讨论】:

    • 我明白了。这就是 ssl 业务的运作方式。我现在买不起通配符证书。我刚刚做了一个解决方法,我编辑了 apache 的 SSL 错误页面以重定向到我的主页。我还在我的服务器根 .htaccess 文件中添加了这些:&lt;IfModule mod_rewrite.c&gt;RewriteEngine onRewriteCond %{HTTPS} on [OR]RewriteCond %{HTTP_HOST} $www\.domain.com [NC]RewriteRule (.*) https://domain.com%{REQUEST_URI} [R=301,L]&lt;/IfModule&gt;&lt;/IfModule&gt;&lt;IfModule !mod_rewrite.c&gt;ErrorDocument 404 domain/index.php&lt;/IfModule&gt;
    • 我怀疑这会有所帮助,因为 SSL 警告是在浏览器内部生成的,而不是来自服务器。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多