0

我正在尝试将数据库动态创建的当前 URL 重写为搜索引擎友好的 URL

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

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

我有以下 web.config 似乎什么也没做;

<?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>
4

1 回答 1

0

我参加这个相当空洞的聚会迟到了,但由于我目前对重写模块的研究,我会添加这个。请参阅此重写参考,这可能是我在该主题上看到的最佳参考。

至于您的问题,看来您可能从错误的角度提出了这个问题,您的“漂亮”网址将在内部最终成为应用程序可读的网址。在您的示例中,用户将输入人类可读的 url,这将被“重写”,以便您的应用程序可以解释它(带有查询字符串参数的 url)。

交换您的规则和操作,以便匹配重定向到 '/clubs/club/?club={R:1}' 的 '/clubs/afc/' - 然后进行测试。请注意,您始终可以在本地 iis 上安装模块并通过 iis 管理器测试规则(如果您可以访问它)。

于 2014-04-20T18:27:08.207 回答