正则表达式 – 使用.htaccess将所有非www重定向到www和https的www

我想将所有非www重定向到www – 如果请求是通过http它应该重定向http://www.domain.com,如果请求是通过https然后直接到 https://www.domain.com

我在.htaccess中尝试了以下内容,但它将所有内容重定向到https

RewriteCond %{HTTPS} off
RewriteRule ^(.*)$https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301

我已经使用了这个代码,它完美地解析了.请检查一下是否正确.

RewriteEngine On
RewriteBase /
#Redirect non-www to www

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

# Redirect to HTTPS
RewriteCond %{HTTPS} off
RewriteRule (.*) https://www.pnrstatusbuzz.in/%{REQUEST_URI}

解决方法

您可以将此规则用作第一条规则:

RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{HTTPS}s on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

相关文章

正则替换html代码中img标签的src值在开发富文本信息在移动端...
正则表达式
AWK是一种处理文本文件的语言,是一个强大的文件分析工具。它...
正则表达式是特殊的字符序列,利用事先定义好的特定字符以及...
Python界一名小学生,热心分享编程学习。
收集整理每周优质开发者内容,包括、、等方面。每周五定期发...