0

我很确定我的 WCF URL 重写规则在我的 Web.config 文件中正确编码:

<rewrite>
    <rules>
        <rule name="RemoveSVC" stopProcessing="true">
            <match url="MyWebSvc/([a-zA-Z]+)-svc/(.*)" />
            <action type="Rewrite" url="MyWebSvc/{R:1}.svc/{R:2}" appendQueryString="true" logRewrittenUrl="true" />
        </rule>
    </rules>
</rewrite>

重写规则似乎在“测试模式...”小部件中起作用。例如:

http://localhost/MyWebSvc/thinga-svc/majigs

被正确映射到:

{R-1} thinga
{R-2} majigs

我希望将 URL 重写为:

http://localhost/MyWebSvc/thinga.svc/majigs

但是,当我尝试从浏览器测试 URL 时,这似乎很简单:

http://localhost/MyWebSvc/thinga.svc/majigs

有效,但是

http://localhost/MyWebSvc/thinga-svc/majigs

似乎没有被重写,我得到一个 404 响应代码。我是否必须将规则配置为使用其他设置触发?

4

0 回答 0