如何重定向 .htaccess 中的子域

How can I redirect subdomain in .htaccess

您好,如果用户通过“https://darkzin.cz/”输入到“https://www.darkzin.cz/”,我需要重定向到我的网页。 为此,有人帮助我使用“.htaccess”代码:

RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule (.*) https://www.darkzin.cz/ [L,R=301,NE]

有效,但现在我需要子域 (https://pamatnicek.darkzin.cz/)。这是我的问题。

我该如何解决这个问题?

不要对域名进行硬编码,而是使用 RewriteCond %{HTTP_HOST} 从 URL 本身匹配它,并稍后在规则中使用反向引用:

RewriteCond %{HTTP_HOST} !^www\. [NC,OR]
RewriteCond %{HTTPS} !on
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://www.%1%{REQUEST_URI} [R=301,L,NE]

%1 是我们在 RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC] 中从捕获组捕获并稍后在 RewriteRule 中使用 %1 的值。