URL变量未通过URL重写引擎传递

时间:2019-04-07 20:30:50

标签: variables url iis url-rewriting

我试图通过IIS中的URL Rewrite引擎传递多个变量,但我只能传递一个。变量为:“用户名”和“信息”。目前,我只获得第一个变量“用户名”传递给页面。

我尝试了URL重写的多种格式,并尽可能地检查了我的语法,但是找不到任何错误。下面是代码。

浏览器友好的网址:

http://localhost/member/csaad78/social

服务器端网址: member.asp?username = csaad78&info = social

URL重写引擎中的规则:

  <rule name="member social iframe forwarded">
    <match url="^member/([_0-9a-z-]+)/([_0-9a-z-]+)/?$" />
    <action type="Rewrite" url="member.asp?username={R:1}&amp;info={R:2}" appendQueryString="true" />
    <conditions></conditions>
    <serverVariables></serverVariables>
  </rule>

在页面中捕获查询字符串的代码是:

member_name =修剪(request.querystring(“ username”)) info =修剪(request.querystring(“ info”))

仅传递变量“用户名”。未传递“信息”。我想让两者都通过!

1 个答案:

答案 0 :(得分:0)

您可以尝试使用以下规则和asp代码获取查询字符串参数值:

<rule name="member social iframe forwarded">
            <match url="^member/([_0-9a-z-]+)/([_0-9a-z-]+)/?$" />
            <action type="Rewrite" url="member.asp?username={R:1}&amp;info={R:2}" appendQueryString="true" />
          </rule>

asp代码:

member_name= <%=Request.QueryString("username")%> info= <%= Request.QueryString("info")%>. 

enter image description here