我用两种语言制作了一个网站。我每个人都有一个特定的域。我买了它们,它们指向相同的目录(因此它们显示相同的站点)。
我希望将每种语言重定向到其特定域。
我尝试过:
RewriteRule ^fr/(.*)$ https://www.french-domain.com/fr/$1 [L,R=301]
RewriteRule ^en/(.*)$ https://www.english-domain.com/en/$1 [L,R=301]
但是它会产生循环错误。
有人知道吗?谢谢。
答案 0 :(得分:0)
您总是在搜索旧网址和新网址中都存在的模式,因为它们都指向同一文件夹...您进入无休止的循环。
如果您有2个域,则可以按域本身进行检查,
那样:
create procedure [dbo].[spUpdateContentment]
(
@employeeid int,
@new_questionid int,
@old_questionid int,
@date date
)
as
begin
update contentment
set questionid= @new_questionid
where employeeid= @employeeid and questionid= @old_questionid and date = @date
else
RAISERROR(@ErrMsg,16,1)
end
我不完全了解域名的外观,并且无法重定向到其他域名,因此也许您需要进行一些更改。
但是尝试一下并更新它是否对您有用,
答案 1 :(得分:0)
您没有使用正确的规则来重定向域。您的规则仅重定向以fr
和en
开头的网址路径,即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]