我是 URL 重写的新手,有点沮丧。我在服务器上使用 Helicon 并且已经正确地重写了大多数 URL。
(我必须删除“//”才能提交问题,但网址是标准的 http:// 版本)
我的最后一个任务是得到这些:
http://example.com/Object/?page=1
http://example.com/Object/?page=1&pagesize=10
http://example.com/Object/?page=1&pagesize=10&backcolor=red
到
http://example.com/default.aspx?resource=Object&page=1
http://example.com/default.aspx?resource=Object&page=1&pagesize=10
http://example.com/default.aspx?resource=Object&page=1&pagesize=10@backcolor=red
最好我想要一个规则来处理所有 3 种可能性,但是如果我需要制定 3 条规则,每条规则一条,并在最后添加一个 [L] 或其他东西也可以。我只是无法正确解析查询字符串。
这是我现有的一条规则,可以让您了解我一直在做什么:
RewriteRule ^/([a-zA-Z0-9]+)(/([a-zA-Z0-9]+)(/([a-zA-Z0-9]+))?)?/?($|\?) /default.aspx?resource=$1&id=$3&option=$5 [L]
这是一个单独的示例,但语法显示了我在做什么。