2013-05-29 85 views
0

我试图改写由DB动态创建我目前的网址,搜索引擎友好的URL的web.config URL重写语法

http://mysite.co.uk/clubs/?club=AFC%20Wimbledon

将成为http://mysite.co.uk/clubs/afc-wimbledon

我有以下的网络。配置似乎什么都不做;

<?xml version="1.0" encoding="UTF-8"?> 
<configuration> 
<system.webServer> 
<rewrite> 
    <rules> 
<rule name="RedirectUserFriendlyURL1" stopProcessing="true"> 
<match url="^clubs/?club=([A-z0-9]+)"/> 
    <conditions> 
     <add input="{REQUEST_METHOD}" pattern="^POST$" negate="true" /> 
    </conditions> 
    <action type="Redirect" url="clubs/{R:1}" appendQueryString="false" /> 
</rule> 
    </rules> 
</rewrite> 
</system.webServer> 
</configuration> 

回答

0

,我迟到了这个,而空方,但我会因为我目前各地重写模块的研究,无论添加此。看到这rewrite reference这可能是我见过的最好的参考。

至于你的问题,你可能会从错误的角度来看这个问题,你的'漂亮'的URL在内部最终会成为应用程序可读的URL。在你的例子中,用户将输入人类可读的URL,这将被'重写',因此你的应用程序可以解释它(带查询字符串参数的URL)。

交换你的规则和动作,让你匹配重定向到'/俱乐部/俱乐部/俱乐部= {R:1}'的'/ clubs/afc /' - 然后测试。请注意,您可以随时在本地iis上安装该模块,并通过iis管理器(如果您有权访问它)来测试规则。