URL 重写此 .htaccess 的更好方法

A better way to URL Rewrite this .htaccess

我想知道是否有更好的方法来做到这一点。它正在执行以下操作:

A) 路由 mydomain.uk 到 www.mydomain.uk

B) 将任何非 http 路由到 https://www.mydomain.uk

我不太使用基于 linux 的服务器,所以我相信有更好的方法来做到这一点。最终结果应该是任何基地 url 应该结束在 https://www.mydomain.uk

这是代码

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]

RewriteCond %{HTTP_HOST} ^mydomain.uk$
RewriteRule ^/?$ "https\:\/\/www\.mydomain\.uk\/" [R=301,L]

这 2 条规则可以很容易地合二为一:

RewriteEngine On

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

您可以使用OR

RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^mydomain.uk$
RewriteRule (.*) https://www.mydomain.uk%{REQUEST_URI} [R,L]

规则 RewriteCond %{HTTP_HOST} ^mydomain.uk$ 也可以更严格,并捕获任何不是 www.mydomain.uk 的主机。