重定向子目录而不影响主目录

Redirect subirectories without affecting the main directory

在 WordPress 中更新内容时,我发现生成 slug 的插件无法使用另一个页面已在使用的 slug,因此我不得不将 slug 更改为略有不同的东西。我现在需要确保任何尝试旧 url 的人都能在不影响主页的情况下被重定向到新 url。

所以我 /members/ 有一个成员列表,您可以单击成员转到 /member/[name] 我需要重定向 /members/[name]/member/[name][name] 可以是任何东西,所以它需要是一个通配符。

我已经使用了以下两个 htaccess 规则(不是同时),但它们总是最终重定向 /members/ 页面,这也破坏了一切。

RewriteRule ^members/(.*) http://domain.tld/member [R=301,L]

RedirectMatch 301 ^/members/.*$ http://domain.tld/member

如果 /

之后有内容,我错过了什么让它只重定向

旁注:我已经尝试找到这个问题的答案,但我发现的所有结果都试图做我需要的完全相反的事情(仅重定向 /members/ 的完全匹配)并且不会工作。

试试这个

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/ [R=301,L]
Redirect 301 /oldDir/old.php http://yourDomain/newDir/new.php

您没有使用请求的捕获部分。

尝试:

RedirectMatch ^/members/(.+)$ /member/