使用 htaccess 正则表达式的 301 重定向

301 Redirection using htaccess Regex

我想将我的 301 网址重定向到其他一些网址。以下是案例:

xyz.com/html/german = xyz.com/de
xyz.com/german = xyz.com/de

还有一个案例:

xyz.com/html/german/subpage.html = xyz.com/de/subpage

有人帮忙吗?

我尝试使用正则表达式,但它不起作用:

这是我试过的方法:

RewriteRule ^/de/([^/.]+)$ html/german/ [L]

从重写模式中删除前导斜杠:

尝试:

RewriteRule ^de/?$ html/german/ [NC,L]
RewriteRule ^de/([^/.]+)/?$ html/german/ [NC,L]

你的规则实际上是相反的。试试这些重定向规则:

RedirectMatch 301 ^/(html/)?german/?$ /de

RedirectMatch 301 ^/(?:html/)?german/([^.]+)(?:\.html)?$ /de/