如何重定向这样的内容(从一个域到另一个域,只保留相同的语言):
RewriteRule ^(de|en|es|fr|it)/folder1/file.html$ http://domain.com/folder3/en/folder2/some_file [R=302,L]如果我想将括号中的任何一种语言重定向到一种语言,即EN,则上述规则将起作用。我想要做的是重定向到同一种语言,但只适用于前3种语言(de颇具en_es es)。最后两种语言(fr_it)应该重定向到EN。
我可以为每种语言写一个条目如下:
RewriteRule ^de/folder/file.html$ http://domain.com/folder3/de/folder2/some_file [R=302,L]但是以这种方式单独列出语言似乎不是很好的编码或效率,因为我必须对所有5种语言重复上面的一行。
发布于 2016-08-29 19:24:52
您可以使用替换字符串中括号中捕获的匹配,方法是使用$1 (用于模式中的第一个括号匹配)、$2 (用于第二个匹配)等等。
因此,你可以在两条规则中写出你想要的东西。这有点重复,但是如果您单独使用所有5种语言,则不会达到所需的程度。
RewriteRule ^(de|en|es)/folder1/file.html$ http://domain.com/folder3/$1/folder2/some_file [R=302,L]
RewriteRule ^(fr|it)/folder1/file.html$ http://domain.com/folder3/en/folder2/some_file [R=302,L]https://stackoverflow.com/questions/39213579
复制相似问题