【问题标题】:Redirect all traffic to SSL except some domains将所有流量重定向到 SSL,但某些域除外
【发布时间】:2015-03-13 11:56:46
【问题描述】:

我们目前正在使用以下代码将流量重定向到 SSL。

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

问题在于,像 www.duplika.net 或 www.duplika.com.br 这样的托管域名也被重定向到 https://www.duplika.com

有没有办法重定向流量,除了来自这个域的流量?

查看this thread后,我尝试了以下但没有成功:

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

【问题讨论】:

    标签: .htaccess mod-rewrite redirect ssl


    【解决方案1】:

    您需要匹配 %{HTTP_HOST} 以过滤掉域

    RewriteEngine On
    RewriteCond %{SERVER_PORT} 80
    RewriteCond %{HTTP_HOST} !\.(net|br)$ [NC]
    RewriteRule ^(.*)$ https://www.duplika.com/$1 [R=301,L]
    

    上面的例子测试了一个域在重定向之前不以.net.br 结尾。您可能需要根据您不想被重定向的所有域更改模式。

    【讨论】:

      猜你喜欢
      • 2019-11-09
      • 2017-10-23
      • 1970-01-01
      • 2016-09-23
      • 2018-02-03
      • 2014-10-02
      • 2021-12-14
      • 2012-01-15
      • 2014-01-11
      相关资源
      最近更新 更多