Apache 重定向匹配相当于用于重新排列目录结构的Mod_重写规则

Apache 重定向匹配相当于用于重新排列目录结构的Mod_重写规则,apache,mod-rewrite,url-rewriting,rewrite,Apache,Mod Rewrite,Url Rewriting,Rewrite,我想以重定向匹配指令的形式重新创建mod_重写规则 首先,请看一下这个mod_重写规则: RewriteEngine On RewriteCond %{HTTP_HOST} (www.)?africananimals.com RewriteCond %{REQUEST_URI} zebras RewriteRule ^(stripes|hooves)/zebras/?$ zebras/$1 [R,L] 该规则(由一位非常有帮助且知识渊博的StackOverflow贡献者编写)告诉服务器转换以下

我想以重定向匹配指令的形式重新创建mod_重写规则

首先,请看一下这个mod_重写规则:

RewriteEngine On
RewriteCond %{HTTP_HOST} (www.)?africananimals.com
RewriteCond %{REQUEST_URI} zebras
RewriteRule ^(stripes|hooves)/zebras/?$ zebras/$1 [R,L]
该规则(由一位非常有帮助且知识渊博的StackOverflow贡献者编写)告诉服务器转换以下四个URL:

--分为以下几个更好、结构更合理的部分:

(这些不是实际的URL,只是示例。)

该托管服务器上还有其他网站,它们可能恰好具有相同的目录结构,因此第一个条件确保规则仅应用于africananimals.com域,无论是否有www

第二个条件确保仅当URL中存在单词“zebras”时才应用该规则

规则本身选择“条纹”或“蹄子”,后跟“/zebras”或“/zebras/”,并重写URL,将先前选择的项目(条纹或蹄子)放在“zebras/”之后,这与应该做的完全一样

问题:如何使用RedirectMatch指令完成相同的任务


作为一名Apache业余爱好者,我非常感谢专业人士的洞察力

我想像这样的事情可以做到:

RedirectMatch 301 ^/(stripes|hooves)/zebras/?$ http://africananimals.com/zebras/$1

我想类似的东西可以做到:
RedirectMatch 301^/(条纹/蹄子)/斑马/?$http://africananimals.com/zebras/$1
谢谢@faa,这正是我需要的!你想把它作为一个实际的答案,这样我可以选择它作为最好的吗?好的。谢谢我会回答的。好了。非常感谢你的帮助!