我们的网站有4种语言/地区。
domain.com/en、domain.com/es、domain.com/fr、domain.com/pt
最初,营销小组希望用户访问domain.com并对其进行屏蔽,使其在浏览器中看起来像domain.com。他们不想看到domain.com/cn。此外,他们希望用户能够访问domain.com/water并屏蔽该URL,使其看起来像domain.com/water。其他语言都可以。
在详细了解SEO之后,我们意识到应该将301重定向到domain.com/en/water,这样看来我们在domain.com/water和domain.com/en/上都没有重复的内容水。营销组现在可以很好地显示“ en”。 :)
问题是,我们有很多现有规则,这使(我)感到困惑。
这是我们希望工作的方式:
这是我们现有的规则。
我们尝试在下面的现有规则中添加一些新行(此刻我没有这些方便的行),但这导致URL中包含许多/ en /,例如domain.com/en/en/en/en/en/en/sample。任何帮助将不胜感激。
Include conf/mktg_redirs.conf
RewriteRule ^/cas/.* - [L]
RewriteRule ^/cs/.* - [L]
RewriteCond %{REQUEST_URI} !^/en/.+
RewriteCond %{REQUEST_URI} !^/fr/.+
RewriteCond %{REQUEST_URI} !^/pt/.+
RewriteCond %{REQUEST_URI} !^/es/.+
RewriteCond %{REQUEST_URI} !^/en$
RewriteCond %{REQUEST_URI} !^/fr$
RewriteCond %{REQUEST_URI} !^/pt$
RewriteCond %{REQUEST_URI} !^/es$
RewriteCond %{REQUEST_URI} !^/cs/.*
RewriteCond %{REQUEST_URI} !^/cas/.*
RewriteRule ^(.*)$ /en$1
# This cleans up the adding of the default / for the bare URI (www.domain.com with nothing after)
RewriteRule ^/en/$ /en