我正在寻找一组可以执行以下操作的重写规则:
- http-www和http非www到https-www
- https非www到https-www
你也可以说我想要所有不等于https://www.somedomain.com,重写为https://www.somedomain.com.
我已经看到了很多答案,但我找不到一套与上述内容相匹配的重写规则,也很难将其中一些规则组合成一套坚实的规则来实现上述内容。
提前感谢!
您可以在DOCUMENT_ROOT/.htaccess
文件中使用以下单一规则:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(?:www'.)?somedomain1'.com$
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www'.
RewriteRule ^ https://www.somedomain1.com%{REQUEST_URI} [NE,R=301,L]
RewriteCond %{HTTP_HOST} ^(?:www'.)?somedomain2'.com$
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www'.
RewriteRule ^ https://www.somedomain2.com%{REQUEST_URI} [NE,R=301,L]
RewriteCond %{HTTP_HOST} ^(?:www'.)?somedomain1'.com$
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www'.
RewriteRule ^ https://www.somedomain1.com%{REQUEST_URI} [NE,R=301,L]
它对我有效,除了https://somedomain1.com
没有重定向到https://www.somedomain1.com