代码之家  ›  专栏  ›  技术社区  ›  Norseman

Url重写-查询字符串分析

  •  0
  • Norseman  · 技术社区  · 12 年前

    我是URL重写的新手,有点沮丧。我在服务器上使用Helicon,并且已经获得了正确重写的大多数URL。

    (我不得不删除“//”以允许我提交问题,但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

    最好我想要一个规则来处理所有三种可能性,但如果我需要制定三个规则,每个规则一个,并在最后添加[L]或其他东西,那也可以。我就是无法正确解析querystring。

    以下是我现有的一条规则,可以让你了解我一直在做什么:

    RewriteRule ^/([a-zA-Z0-9]+)(/([a-zA-Z0-9]+)(/([a-zA-Z0-9]+))?)?/?($|\?) /default.aspx?resource=$1&id=$3&option=$5 [L]
    

    这是一个单独的例子,但语法显示了我在做什么。

    1 回复  |  直到 12 年前
        1
  •  0
  •   user3266190 user3266190    12 年前

    这对你有用吗?

    RewriteRule ^\/([^/]*)\/\?(.*)$ /default.aspx?resource=$1&$2 [L]
    

    [更新]

    试试这个:

    RewriteRule ^([^/]*(?=\/)|[^?]*(?=\?)|.*)($|[^\?]*\?(.*)) /default.aspx?resource=$1&$3 [L]