在浏览器中我想要这个网址:
http://my.website.com/Something/Action?param1=a¶m2=b
这应该调用页面:
http://my.website.com/index.php?c=Something&a=Action&p1=a&p2=b
我搜索了Google和Stackoverflow,但没有任何效果。或者IIS在友好URL中提供400或de查询字符串不起作用。 这让我发疯了!
这就是我现在所拥有的:
<rule name="Clean extra question mark from query string" stopProcessing="true">
<match url="^(.+)/(.+)$" />
<conditions>
<add input="{QUERY_STRING}" pattern="(.*)" />
</conditions>
<action type="Rewrite" url="/index.php?controller={R:1}&action={R:2}&params={C:1}" appendQueryString="true" />
</rule>
使用网址my.website.com/Page/Part?a=1它运行正常。但是当我使用这个网址时: my.website.com/Page/Part?a=1&b=2我看到a = 1,但我没有看到b = 2 ...查询字符串中的参数数量可能不同。
请注意,PHP在IIS 7.5中托管,我正在使用IIS的重写模块。 另请注意,查询字符串不是固定长度。有些时候它可以有2个项目(param1和param2)或更多(或更少)。
有人对此有兴趣吗?
提前致谢