IIS URL重写查询字符串

时间:2015-03-05 08:56:51

标签: php iis url-rewriting

我希望有人能够提供一些自定义网址重写方面的帮助。

我有一个网址http://website/central/?agentcontent=about,我希望在网址栏中重写看起来像http://website/central/about的网址。

目前我的网络配置如下:

<rule name="Agency Sub Page">
  <match url="(.*)" />
      <conditions>
         <add input="{QUERY_STRING}" pattern="(.*)agentcontent=(.*)" />
       </conditions>
      <action type="Rewrite" url="{C:1}{C:2}" />
</rule>

但没有任何反应,网址保持不变。

网址重写绝对是安装和运行的,因为我有其他网站使用它没有问题。

1 个答案:

答案 0 :(得分:0)

您可以使用以下规则执行此操作:

<rule name="Agency Sub Page with trailing slash" stopProcessing="true">
  <match url="(.*)/$" />
      <conditions>
                    <add input="{QUERY_STRING}" pattern="agentcontent=(.*)" />
       </conditions>
      <action type="Rewrite" url="{R:0}{C:1}" appendQueryString="false" />
</rule>
<rule name="Agency Sub Page" stopProcessing="true">
  <match url=".*" />
      <conditions>
                    <add input="{QUERY_STRING}" pattern="agentcontent=(.*)" />
       </conditions>
      <action type="Rewrite" url="{R:0}/{C:1}" appendQueryString="false" />
</rule>

我使用了两个规则,因为末尾有斜杠(处理两个网址:http://website/central/?agentcontent=abouthttp://website/central?agentcontent=about)。