htaccess 将停放域子文件夹附加到 URL

htaccess apending parked domains subfolder to the URL

我为客户创建了一个网站,按照正常情况,我们的网站包含一个 htaccess 文件,用于将任何非 www 流量重定向到 www。子域名。

客户现在添加了一个停放域作为他们想要托管另一个站点的子文件夹。如果您转到 www.parkeddomain.com 那么它就可以工作,显示 PARKEDDOMAIN.COM 子文件夹中的站点。但是,如果您转到 parkeddomain.com,htaccess 会将您重定向到 www.parkeddomain.com/PARKEDDOMAIN.COM。我怎样才能阻止它将子文件夹附加到 URL?

这是 htaccess 文件的内容:

Options +FollowSymLinks
RewriteEngine on

# Redirect old URLs to new URLs
Redirect /jewelry-the-experience /custom-made-jewelry
Redirect /jewelry-the-process /custom-made-jewelry

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

RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule (.*)$ /handle-url.php [L] 

在现有规则之前添加以下规则。

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

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

我们首先捕获没有 www 的停放域,然后在没有其子目录的情况下进行重定向。这可确保现有规则始终仅重定向主域。