【问题标题】:HTTPS RewriteCond with two / routes带有两个 / 路由的 HTTPS RewriteCond
【发布时间】:2018-03-30 20:36:59
【问题描述】:

我有 n 个这样的网址:

http://name.co/othername/xname 
http://name.co/othername/yname

所以 name.co/othername 是相等的。只是“xname”正在更改为不同的名称。

我需要重定向到 HTTPS 端。

我试过了:

RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

但结果不正确。如果有人可以帮助我,那就太好了

【问题讨论】:

    标签: mod-rewrite https


    【解决方案1】:

    REQUEST_URI 将排除查询字符串。此外,您需要标志,至少是 [R],通常还需要 [L]。在这种情况下,您可能需要 301 重定向,除非您认为以后可能会关闭它。尝试将 RewriteRule 替换为:

    RewriteRule (.*) https://%{SERVER_NAME}/$1 [R=301,L]
    

    R 标志意味着实际向浏览器发送重定向,而不是仅仅改变内部处理 URL 的方式; L 标志表示这是应处理的最后一个指令;它简化了其余的处理过程并避免了其他规则所做的任何额外更改。

    【讨论】:

      猜你喜欢
      • 2015-05-24
      • 1970-01-01
      • 2016-07-10
      • 2011-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-08
      • 1970-01-01
      相关资源
      最近更新 更多