我试图更好地理解 Apache 的 mod_rewrite,并且得到了意想不到的结果。我尝试了许多不同的表达方式,但似乎没有任何表现符合我的理解。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*)$ index.php?route=$1 [QSA,L]
使用www.domain.com/item1/item2/item3
产量item1/item2/item3
使用www.domain.com/item1/item2/item3.php
产量item1/item2/item3.php
使用www.domain.com/item1/item2/item3...........
产量item1/item2/item3
为什么不是item1/item2/item3...........
?
奇怪的是,如果 URL 是www.domain.com/item1/item2/item3..........a
,那么路由就是我所期望的,item1/item2/item3..........a
我尝试了其他一些正则表达式,但它们的作用相似。
谢谢你。