htaccess将前缀重定向到域



我用两种语言制作了一个网站。我对每一个都有一个特定的域。我买了它们,它们指向同一个目录(所以它们显示的是同一个网站(。

我很乐意将每个语言重定向到它的特定域。

我试过了:

RewriteRule ^fr/(.*)$ https://www.french-domain.com/fr/$1 [L,R=301]

RewriteRule ^en/(.*)$ https://www.english-domain.com/en/$1 [L,R=301]

但它会创建一个带有循环的错误。

有人有主意吗?谢谢

您总是在搜索旧url和新url中都存在的模式,因为它们都指向同一个文件夹。。。你进入了无尽的循环。

如果你有2个域,那么你可以通过域本身进行检查,

像这样:

HTTP_HOST fr.french-domain.com/(.*)
RewriteRule ^fr.french-domain.com/(.*)$ https://www.french-domain.com/fr/$1 [L,R=301]

我不知道域的具体外观,也不知道重定向到什么,所以也许你需要稍微改变一下。

但是尝试一下,如果它对你有效的话,请更新,

您没有使用正确的规则重定向域。您的规则仅重定向以fren开头的Url路径,即:example.com/fr。要将域重定向到特定文件夹,首先需要检查HTTP_HOST标头,然后将主机重定向到文件夹。

在/.htaccess您的域所指向的目录中使用以下规则:

RewriteEngine on
# map fr-example.com to /fr-folder
RewriteCond %{HTTP_HOST} ^(www.)?fr-example.com$ [NC]
RewriteRule ^.*$ /fr-folder%{REQUEST_URI} [L]
# map eng-example.com to /eng-folder
RewriteCond %{HTTP_HOST} ^(www.)?eng-example.com$ [NC]
RewriteRule ^.*$ /eng-folder%{REQUEST_URI} [L]

相关内容

  • 没有找到相关文章

最新更新