重写&;使用Apache2中的可选/XX/home部件重定向

重写&;使用Apache2中的可选/XX/home部件重定向,apache,url,redirect,url-rewriting,Apache,Url,Redirect,Url Rewriting,对于一个完美的工作和错误404免费日志文件,我必须重定向所有以前(现在是错误的)主页URL到新的主页。为此,我有一个部分工作重写: RewriteRule ^home$ /en/aster [R=301] // Works for site.com/home but NOT for site.com/en/home or site.com/xx/home etc. 问题1。如何制作可选部分??/以便site.com/anything/home永久重定向到site.com/anything/h

对于一个完美的工作和错误404免费日志文件,我必须重定向所有以前(现在是错误的)主页URL到新的主页。为此,我有一个部分工作重写:

RewriteRule ^home$ /en/aster [R=301]
// Works for site.com/home but NOT for site.com/en/home or site.com/xx/home  etc.
问题1。如何制作可选部分
??/
以便
site.com/anything/home
永久重定向到
site.com/anything/home
确保根目录不是另一个文件夹,而是实际的站点根目录,后跟两个语言字符then/home

问题2。出于一致性和SEO目的,我需要一个
[R=301]
还是
[R=301,L]


非常感谢您的想法和帮助。

我不确定我是否完全理解您希望
site.com/anywhere/home
重定向到的内容,但我就是这样理解的:

重写规则(.*)/home$1/en/aster[R=301,L]
将匹配以“/home”结尾的所有请求。
(.*)
将使URL保持在同一路径中。因此
site.com/anything/home
重定向到
site.com/anything/en/aster

就搜索引擎优化而言,
[R=301,L]
[R=301]
之间没有区别。
L
通知mod_rewrite不要处理任何进一步的规则,在本例中,这是您想要的,因为您正在重定向到新页面

希望这有帮助