我正在将旧网站迁移到新网站,并且需要大量的网址重定向/重写。
作为示例,我需要将 / old_page 重定向到 / new_page ,问题是/ old_page可以在其上方具有任意数量的网址片段,例如 / some / other / section / old_page
目前我必须使用以下两条规则:
RewriteRule ^old_page/?$ /new_page? [R=permanent,L]
RewriteRule ^(.*)/old_page/?$ /new_page? [R=permanent,L]
无论如何只用一条规则来实现这个目标吗?我确实试过用这个:
RewriteRule ^(.*)/?old_page/?$ /new_page? [R=permanent,L]
但是这会导致非预期的匹配,例如/ do_not_move_old_page也会被重定向。
答案 0 :(得分:1)
尝试:
RewriteRule ^(.*/)?old_page/?$ /new_page? [R=permanent,L]