Url rewriting IIS URL将Service1.svc重写为api
我正在尝试使用IIS URL重写来重写:Url rewriting IIS URL将Service1.svc重写为api,url-rewriting,biztalk,iis-10,Url Rewriting,Biztalk,Iis 10,我正在尝试使用IIS URL重写来重写: http://localhost/RESTDemo/Service1.svc/Persons至http://localhost/RESTDemo/api/Persons 我的Web.config中有以下配置: <system.webServer> <rewrite> <rules> <rule name="Change 'Service1.svc' to
http://localhost/RESTDemo/Service1.svc/Persons
至http://localhost/RESTDemo/api/Persons
我的Web.config中有以下配置:
<system.webServer>
<rewrite>
<rules>
<rule name="Change 'Service1.svc' to 'api'" stopProcessing="true">
<match url="^(.*)/RESTDemo/api/(.*)$" />
<action type="Rewrite" url="{R:1}/RESTDemo/Service1.svc/{R:2}" logRewrittenUrl="true" />
</rule>
</rules>
</rewrite>
</system.webServer>
我的问题是
这是因为您的重写规则有问题,您可以尝试以下重写规则:
<system.webServer>
<rewrite>
<rules>
<rule name="Change 'Service1.svc' to 'api'" stopProcessing="true">
<match url="^(RESTDemo)/api/(.*)$" />
<action type="Rewrite" url="RESTDemo/Service1.svc/{R:2}" logRewrittenUrl="true" />
</rule>
</rules>
</rewrite>
</system.webServer>
从错误1开始
<system.webServer>
<rewrite>
<rules>
<rule name="Change 'Service1.svc' to 'api'" stopProcessing="true">
<match url="^(RESTDemo)/api/(.*)$" />
<action type="Rewrite" url="RESTDemo/Service1.svc/{R:2}" logRewrittenUrl="true" />
</rule>
</rules>
</rewrite>
</system.webServer>