我有一个重写规则(Apache Mod Rewrite):
RewriteRule ^(item)/([Gg][Ii][FfMm][0-9][0-9][0-9])/?$ index.php?item=$2
就像这样:
/item/GIF012/ -> index.php?item=GIF012
/item/GIM123/ -> index.php?item=GIM123
但是当网址看起来像:
/item/GIF1/
/item/GIM12/
它根本行不通。 我怎样才能更改该规则以便这些链接有效?
答案 0 :(得分:2)
您可以在其后放置?
来使某个部分成为可选部分:
RewriteRule ^(item)/([Gg][Ii][FfMm][0-9][0-9]?[0-9]?)/?$ index.php?item=$2
此外,以下将是一个更紧凑的解决方案:
RewriteRule ^(item)/([Gg][Ii][FfMm][0-9]{1,3})/?$ index.php?item=$2