我正在重写这种网址
http://deia.info/category/calendar/10/
要
/index.php?task=browse_posts&catid=$2
通过.htaccess中的此代码
RewriteRule ^category/(.+)/(.+) /index.php?task=browse_posts&catid=$2
似乎做了这个工作。问题是当发送其他参数时,会忽略这些参数。
例如:
http://deia.info/category/calendar/10/?start_date=10
isset($_GET['start_date'])
不会返回真实
为什么?
答案 0 :(得分:1)
当传入的URL包含OP示例中的查询时:
http://deia.info/category/calendar/10/?start_date=10
将其与/替换为替换网址中的新查询的方式相加(附加)方法是添加QSA Flag。
所以添加[L,QSA]
,就像这样:
RewriteRule ^category/(.+)/(.+) /index.php?task=browse_posts&catid=$2 [L,QSA]