我有两个域名。其中一个包含拉丁字符,因此是IDN网址。我想要的是将常规域重定向到IDN域,并从两个域名中删除www
前缀。
我的.htaccess
文件如下所示:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^regularurl\.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www\.regularurl\.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www\.xn--idnurl-ujb\.com$ [NC]
RewriteRule ^(.*)$ http://xn--idnurl-ujb.com/$1 [R=301,L]
问题是 - 它正确地重定向到xn--idnurl-ujb.com
,但无论如何(无论我重定向的是哪个网址 - 有或没有www)都将www
追加到最后,以便它成为像这样:xn--idnurl-ujb.com/www
。这显然不是我想要的,因为该URL不存在并重定向到404站点。我无法理解为什么会发生这种情况 - 我也尝试了很多不同的代码变体。我过去成功完成了一些.htaccess
重定向,但它们不是IDN域名 - 这与它有什么关系吗?我做错了什么?
另外,如果我能做些什么来使代码更容易或更有活力,请告诉我。