我需要一些帮助,这是我第一次使用"重写规则"作为链接。
我的网站是一个网店。
网址将是这样的:
www.mydomain.com/shop.php
这个文件shop.php将通过url接收最多3个参数。
示例:
案例1:www.mydomain.com/shop.php?第1页
案例2:www.mydomain.com/shop.php?page=1&类别=1
案例3:www.mydomain.com/shop.php?page=1&category=1&子类别=3
我需要的是重写规则返回给我类似的东西:
案例1:www.mydomain.com/shop.html/1
案例2:www.mydomain.com/shop.html/1/FeaturesItems/
案例3:www.mydomain.com/shop.html/1/FeaturesItems/BrandName
让我们想象一下,FeaturesItems是一个类别,他的Id是数字1。
让我们想象一下,BrandName是一个子类别,他的Id是数字3。
你能帮我创建重写规则吗?
另一个问题是,在shop.php中,我可以用Id读取$_GET["类别"]吗?
我认为您希望简化对/shop/15
的调用,并将其内部重定向到shop.php?category=15
。然后这样做:
RewriteRule ^shop.html/(d+)$ shop.php?category=$1 [L]
RewriteRule ^shop.html/(d+)/FeaturedItems/ shop.php?category=$1&featured=1 [L]
等等
(未经测试)
也许可以更深入地了解mod_rewrite的工作原理。例如:
http://code.tutsplus.com/tutorials/an-in-depth-guide-to-mod_rewrite-for-apache--net-6708https://www.digitalocean.com/community/tutorials/how-to-set-up-mod_rewritehttp://www.workingwith.me.uk/articles/scripting/mod_rewrite
我也可以推荐优秀的mod_rewrite-CheatSheet。还可以查看那里的教程部分。