我正在努力解决这个问题......
我所拥有的是具有基于语言的(虚拟)子网的域,例如domain.com/en。
重点是它在护目镜中被编入索引,并且这个结构在几天内就被更改了,所以旧的链接指向domain.com/postname(给出了404)
我正在尝试重定向,因此domain.com/postname将重定向到domain.com/en/postname
但我的尝试有一个循环错误,如domain.com/en/en/en/en/postname和类似。 我最后一次尝试是使用此代码,但似乎它也可以工作:
RedirectMatch 301 ^/en/([^/]+)$ http://domain.com/en/$1
任何帮助人员? 感谢
答案 0 :(得分:1)
您可以在DOCUMENT_ROOT/.htaccess
文件中使用此规则:
RewriteEngine On
RewriteRule !^en/ /en%{REQUEST_URI} [L,NC,R=301]
答案 1 :(得分:0)
在它之前添加一个规则,限制没有/ en /目录的文件,不确定确切的代码,但是类似于:
RewriteRule !/en/(.*)
答案 2 :(得分:0)
RewriteEngine On
RewriteRule ^(.*)$ /en/$1 [L,R=301]
试试这个(使用mod_rewrite)