加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式 – 如何结合两个apache htaccess重定向条件(http到ht

发布时间:2020-12-14 05:37:19 所属栏目:百科 来源:网络整理
导读:我有两个重定向条件独立工作,但我想避免满足两个条件的情况(这导致两个重定向步骤而不是一个) 我必须承认我对apache正则表达式并不好,所以我把它们从网上拿走了.知道如何将两者(A或B有点逻辑与正则表达式)结合起来吗? 这是代码. RewriteEngine On# redirect
我有两个重定向条件独立工作,但我想避免满足两个条件的情况(这导致两个重定向步骤而不是一个)

我必须承认我对apache正则表达式并不好,所以我把它们从网上拿走了.知道如何将两者(A或B有点逻辑与正则表达式)结合起来吗?

这是代码.

RewriteEngine On
# redirect from http to https
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

# redirect from non-www to www https
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule ^(.*)$https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

满足两个条件时输出的多重定向结果如下所示:

任何帮助深表感谢.谢谢.

解决方法

您可以使用OR条件将两个规则合并为一个:

RewriteEngine On

RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule ^ https://www.domain.com%{REQUEST_URI} [R=301,L,NE]

只需将www.domain.com替换为您的实际域名即可.此外,最好在新的浏览器中测试它,以避免301缓存问题.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读