You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在.htaccess中配置指定路径301重定向其余路径返回410?

实现方案

完全可以实现,无需列出所有未匹配路径,利用Apache mod_rewrite规则从上到下顺序匹配、L标记终止后续规则执行的特性,只需要在你现有重定向规则的最后加一条兜底的410规则即可,同时还可以把你重复的15条分类重定向规则简化成单条,精简配置:

注意:你现有配置中写的^category1\*$转义了*,只能匹配路径为category1*的请求,如果你实际需要匹配category1开头的所有路径,需要改为^category1.*$的写法,以下配置按匹配category1-15开头的所有路径的需求调整。

完整配置示例

# 批量匹配category1到category15的路径,301永久重定向到新域名
RewriteRule ^category(1|2|3|4|5|6|7|8|9|10|11|12|13|14|15) https://NEWSITE.com/ [R=301,L]
# 首页重定向
RewriteRule ^$ https://NEWSITE.com/ [R=301,L]
# 兜底规则:所有未匹配到上述规则的请求直接返回410 Gone状态
RewriteRule ^ - [G,L]

规则说明

  • 前面的重定向规则匹配到你需要跳转的路径后,会触发L标记终止后续规则执行,不会走到兜底的410规则
  • 最后一条规则中的G是mod_rewrite内置的对应410状态码的标记,-表示不修改目标URL,直接返回状态码即可,效果和手动写[R=410,L]完全一致

如果你需要保留原来15条分开写的重定向规则,只需要在所有重定向规则的最后加上上面那条兜底的410规则即可生效。

内容的提问来源于stack exchange,提问作者Mark Marino

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 06:54:01