.htaccess 数字(数字)高级重写规则

.htaccess advanced rewrite rule for numbers(digits)

我有一个URL: 例如。com/fruits12345/mango

我想重定向到 例如。com/fruits/12345/mango

*fruits 后的任何数字都应使用 fruits/NUMBERS 重定向 尝试但失败,因为它创建了太多重定向:

RewriteEngine on 
RewriteBase / 
RewriteRule ^fruits(.*)/(.*) /fruits// [R=301,L]

您可以使用这条规则:

RewriteEngine on 

RewriteRule ^(fruits)(\d+)/(.*) /// [R=301,L,NC,NE]

确保在测试此规则之前清除浏览器缓存。


您的规则存在问题,您在 fruits 之后匹配 .* 匹配任何内容,因此重定向的 URL /fruits/12345/mango 也匹配此模式并再次重定向,并且再次导致重定向循环。