2012-06-19 49 views
0

我有一個帶有WCF服務參考的MVC3應用程序。當然,當我在我的本地主機進行調試時,它運行良好。我將我的MVC3應用程序發佈到我的測試Web服務器,在IIS中配置它,我可以很好地進入主屏幕。我發表我的WCF應用程序相同的Web服務器,在IIS中設置它,但是當我點擊我的登錄按鈕,這在我的WCF服務調用一個方法,我得到這個錯誤:使用WCF服務參考部署應用程序時未找到端點

[EndpointNotFoundException: There was no endpoint listening at 
http://localhost:56266/RQServices.svc that could accept the message. 

在IIS我有網站稱爲NewPCloser,它指向C:\ NewPcloser,在IIS中,WCF應用程序已安裝並指向C:\ NewPcloser \ services。文件RQServices.svc位於此目錄中。除了應用程序指向的位置以外,所有默認設置都在IIS中設置。我不知道還有什麼我需要說或顯示,但讓我知道,我會做到這一點。

我的測試網站是(htp for stackoverflow)htp:// devdb/newpcloser。這些服務位於htp:// devdb/newpcloserservices。我應該向這兩個地方之一指點什麼嗎?

底線爲什麼會出現此錯誤?謝謝

+0

錯誤中的URL是否是正確的端點地址?如果是這樣,您是否瀏覽過該地址以查看終端是否在那裏?此外,它看起來應該尋找http:// localhost:56266/services/RQServices.svc - 因爲IIS指向NewPcloser目錄而不是服務目錄 – Charleh

+0

它看起來像您配置的端點是您的Visual Studio調試會話。 –

+0

不,這是默認情況下在VS中設置的端點地址。我的測試網站是http:// devdb/newpcloser。這些服務位於http:// devdb/newpcloserservices。我應該向這兩個地方之一指點什麼嗎? – BoundForGlory

回答

1

打開你的Web.Config文件,看看你有什麼端點配置。確保它與獲取服務的URL相同。

假設你的服務是提供的網址,您的服務器

http://www.yourserver.com/someservice/something.svc 

那麼你endpoint應該是這樣的

<endpoint address="http://www.yourserver.com/someservice/something.svc" 

     other configuration attributes.... /> 

如果在同一臺服務器託管的話,你可能就能夠用http://localhost/..之類的東西訪問它,而不是你的域名在url中

+0

我添加了這個,但我仍然收到錯誤: BoundForGlory

+0

什麼是devdb/newpcloserservices/RQServices.svc?給一個有效的網址,如http:/// something/.... – Shyju

+0

這就是WCF服務所在的地方。當我在瀏覽器中輸入時出現錯誤。 「如果在配置中將'system.serviceModel/serviceHostingEnvironment/multipleSiteBindingsEnabled'設置爲true,則端點需要指定相對地址。如果您在端點上指定相對偵聽URI,則地址可以是絕對地址。問題,爲端點'http://devdb/newpcloserservices/RQServices.svc'指定一個相對URI。「 – BoundForGlory

相關問題