我在.htaccess:-中使用此规则
RewriteRule ^online-sale on-sale.php
RewriteRule ^online-sale/page-([0-9]+)$ on-sales.php?page=$1
第一条规则是运作良好。例如,如果我打电话http://www.sitename/online-sale已成功打开个页面。当我打电话的时候http://www.sitename/online-sale/page-2页面打开良好,但我无法访问此页面上的$_REQUEST["page"]
值。
有人能告诉我出了什么问题吗?这可能吗?
提前谢谢。
您需要在第一条规则中使用锚点$
来避免页面URL匹配:
RewriteRule ^online-sale/?$ on-sale.php [L]
RewriteRule ^online-sale/page-([0-9]+)/?$ on-sale.php?page=$1 [L,QSA]
还建议使用L
和QSA
标志。
QSA
(查询字符串附加)标志在添加新查询参数时保留现有查询参数。