fxs_2008:apache的url重写mod_rewrite无法匹配问号(?) 收藏
2009年10月06日


url重写是apache的杀手级应用,想要一下全掌握不是件容易的事!
最近在开发中遇到了一个问题,就是模式无法匹配?,即使用转义也不行,(\?)不起作用!

这很麻烦:一些url的优化无法传参,或传参数不方便!
如我想对http:/www.zzxj.net/blog/fxs_2008分页,就不发传参:
一种方式是用/controller/adtion/id的方式;
一种只能是url重写;
下面是我的解决办法?
http:/www.zzxj.net/blog/fxs_2008?page=2重写到:blog/UserBlog.php?Author=fxs_2008&page=2

RewriteRule ^blog/([0-9a-zA-Z_]+)$ blog/UserBlog.php?Author=$1 [L,QSA]

网上找了一下,才发现,apache是不匹配它的!而是另外处理!
解决的办法是用QSA'(追加查询字符串)
手册上是这么写的:

'qsappend|QSA'(追加查询字符串)

此标记强制重写引擎在已有的替换字符串中追加一个查询字符串,而不是简单的替换。如果需要通过重写规则在请求串中增加信息,就可以使用这个标记。

意思是强制追加参数!看来手册仍要好好看!


下面是我goolge的内容,也贴在这里了!




 

本文永久链接: http://www.zzxj.net/blog/fxs_2008/archive/2009/10/06/63.html

发表于 @ 2009年10月06日 |评论(loading... )|收藏

发表评论 姓  名: