Apache htcaccess将子目录重定向到单个页面

Apache htcaccess将子目录重定向到单个页面,apache,.htaccess,mod-rewrite,redirect,Apache,.htaccess,Mod Rewrite,Redirect,在我在现场测试之前,我想确定我有这个权利。在我开始为我现在的雇主工作之前,他们做了一次网站更新,但没有保持相同的URL命名结构。因此,即使我们的网站地图已经更新,我们仍然会在谷歌上发现404个爬网错误。它将列出旧的URL,然后说,然后列出旧的链接作为它们的链接来源。我不确定我需要什么来纠正这个问题 旧结构是domain.com/product/12345/product\u name 新结构是domain.com/category-name/12-product-name。实际上,没有办法将旧产

在我在现场测试之前,我想确定我有这个权利。在我开始为我现在的雇主工作之前,他们做了一次网站更新,但没有保持相同的URL命名结构。因此,即使我们的网站地图已经更新,我们仍然会在谷歌上发现404个爬网错误。它将列出旧的URL,然后说,然后列出旧的链接作为它们的链接来源。我不确定我需要什么来纠正这个问题

旧结构是domain.com/product/12345/product\u name

新结构是domain.com/category-name/12-product-name。实际上,没有办法将旧产品URL与新产品URL相匹配。有些名字已经改变了

因此,我想将/product/目录中的所有页面重定向到单个页面,即主页或所有库存页面

我已经有重写规则了

 RewriteEngine on
 RewriteBase /
 RewriteCond %{HTTP_HOST} www.(.*)$ [NC]
 RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
要重定向产品目录中的所有页面,我应添加:

 RedirectMatch 301  ^/product/(.*) http://domain.com/

我还看到了一个重写规则和重定向永久。不确定我想做的事情的最佳实践是什么。

使用
mod\u rewrite
模块保留所有规则:

RewriteEngine on

RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

RewriteRule ^product/.* / [L,NC,R=301]