2012-04-10 119 views
0

问题编辑以更好地了解7 URL重写:IIS上的WCF服务

我有一个WCF服务,我的任何链接的样子:

https://192.168.1.31/ContactLibrary2.0HTTPS/Service.svc/.....

我想摆脱Service.svc。我在IIS中安装了URL编写器,但我不知道如何使用它。我搜索了一下,没有找到任何东西来帮助我解决这个问题。

Any idea ? 

回答

1

假设你正在配置直接/ContactLibrary2.0HTTPS托管应用程序(并包含目录不是网站,例如),您可以添加一个精确匹配:

rest/GetContact 

与重写URL :

Service.svc/rest/GetContact 

也许你想改写Service.svc的每一个行动,但是,那么你就需要使用正则表达式匹配:

^rest/.*$ 

与重写URL:

Service.svc/{R:0} 

UPDATE

假设你还需要从的网址中删除该字符串的HTML页面,则需要将上述入站规则与新出站规则结合,并将其应用于您感兴趣的文件。

要做到这一点,请:

  1. 添加一个新的出站规则到你的网站,并给它一个名称;
  2. 添加一个新的前提条件有两个规则(匹配任何一个):
    • {RESPONSE_CONTENT_TYPE}比赛text/html
    • {RESPONSE_CONTENT_TYPE}比赛application/xhtml+xmll
  3. 配置的规则匹配响应范围,内容匹配在A标签:
    • 应ma使用正则表达式切换模式;
    • 使用此格式:^(.*)(/Service\.svc/)(.*)$
    • 不区分大小写;
  4. 配置操作是一个重写,这个值:{R:1}{R:3}
+0

它不工作。我将它更改为“rest /.*$”,并且“Service.svc”不会从链接中删除。 – 2012-04-10 12:31:53

+0

所以......你是否希望改变自己网页的链接去除他们网址中的“Service.svc”部分?请在你的问题中添加更多的细节。 – 2012-04-10 13:23:59

+0

编辑的问题。 – 2012-04-10 13:34:43