2011-02-02 172 views
2

全部,在IIS7中託管WCF服務

我已經搜遍了這個組等無濟於事。我已經在IIS7中成功託管了一個WCF(Web)服務。問題是,當IIS將端點暴露給服務時,它使用服務器的本地/ DNS名稱,例如MyServer。我需要將服務公開給我的網絡之外的機器,並且這個名稱(MyServer)不會暴露在外部。我想以某種方式強制IIS使用我給它的名稱與使用託管該服務的計算機的本地/ DNS名稱的名稱。

我試過配置IIS來使用主機名/綁定,但是當我這樣做時,我從IIS獲得的所有東西都是「壞主機名」 - 它無法解析到服務/ .svc文件的地址。我已經嘗試過IP +主機名,單獨使用IP,單獨使用主機名,各種web.config文件設置(某些設置難以遵循,我可能會添加)......都會產生某種錯誤。

這一定是一個很好的「麪包和黃油」的事情......它有一個簡單的解決方案?

感謝, 約翰

+0

如果你想將其暴露你的網絡之外,不會WCF請求路由領域之外的填隙裝置爲外部IP /名稱到您的內部服務器。我不認爲這是在WCF的領域。外部請求 - >貴公司的防火牆/設備 - >翻譯並路由到 - > MyServer。 – kd7 2011-02-02 04:30:11

回答

1

使用在BaseAddress配置通配符:

<host> 
    <baseAddresses><add baseAddress="http://*/MyService" /></baseAddresses> 
</host> 
+0

謝謝,但不幸的是,這並沒有解決問題。我需要使用與本地計算機名稱不同的名稱公開該服務(我想在機器的外部IP下公開它)。我不敢相信這太複雜了。 – 2011-02-02 17:26:37