如何使用 mod_rewrite 删除子文件夹

How can I strip subfolder with mod_rewrite

我要从我的网站上删除一些翻译的内容,但我想重定向到原始语言,翻译的内容 url 是这样的:

mydomain.com/es/mypage
mydomain.com/jp/mypage
mydomain.com/ko/mypage

而原来的lang是这样的:

mydomain.com/mypage

我能够使用 php 重定向到原始内容,但是我想在 apache 中使用 mod_rewrite 或 RedirectMatch

你可以使用这个根 .htaccess:

RewriteEngine on
RewriteRule ^(?:es|jp|ko)(/mypage)$  [NC,R=301,L]

如果您尝试重写所有语言的内容,您可以使用:

RewriteRule ^(?:es|jp|ko)(/.+)$  [NC,R=301,L]

对于单独的目录重定向(例如:mydomain.com/es -> mydomain.com):

RewriteRule ^(?:es|jp|ko)(/.*)?$  [NC,R=301,L]