[KB]當你佈署WCF應用程式出現HTTP 404.3–Not Found.錯誤

摘要:[KB]當你佈署WCF應用程式出現HTTP 404.3–Not Found.錯誤

最近筆者一直有在研究Windows Communication Foundation(以下簡稱WCF),發現WCF服務跟以往的Web Service服務比較起來功能增強了不少功能,也因為這樣我有打算將後面的一些專案使用WCF來開發,可是當我完成我的第一個WCF應用範例並將WCF應用程式佈署到IIS完畢後,執行卻看到下面錯誤畫面

http://localhost/WCFService/Service1.svc
有沒有搞錯? HTTP 404.3 – Not Found.
怎麼可能呢?
當下我的直覺告訴我可能是下面這兩個問題造成:
  1. IIS上所執行的.NET Framework版本不正確。
  2. IIS可能不認識WCF服務。
OK…逐一檢查後發現問題就出在第二點,IIS不認識WCF服務。
竟然是這樣就讓我們重新把WCF服務註冊在IIS
請跟我這樣做,以筆者的電腦為例:
請你以系統管理員身分執行[命令提示字元],並執行C:\Windows\Microsoft.NET\Framewrok\v3.0\ Windows Communication Foundation目錄下的ServiceModelReg.exe並帶上參數-i(完整命令如下)
C:\Windows\Microsoft.NET\Framewrok\v3.0\ Windows Communication Foundation\ ServiceModelReg.exe –i  (如下圖)
 
當我向IIS重新註冊WCF服務完畢時,重新打開IE瀏覽器並鍵入我的WCF服務網址http://localhost/WCFService/Service1.svc,這時候WCF就成功的開啟了。
 
 
不過我倒是覺得滿奇怪的,為何安裝VS2008的時候,安裝程式沒有自己向IIS進註冊WCF服務。