2013-05-01 202 views
0

我們已經部署我們的網站多次成功地不同的環境,但也遇到過,這似乎是相關的RIA Services安裝程序的問題。我們正在部署在Windows Server 2008,64位機器上。404 WCF RIA服務端點

基本上我們是無法調用我們的任何WCF RIA服務端點,我們總是從服務器返回404。我們能夠擊中「原始」svc端點,接收標準的自動生成頁面,但每當我們嘗試調用一個方法時,我們都會收到404.

只是爲了闡明,以下URL返回標準自動生成的服務頁面:

http://localhost/ClientBin/Our-Namespace-DomainService.svc 

,而下面的網址直接返回一個404

http://localhost/ClientBin/Our-Namespace-DomainService.svc/binary/GetSchemaVersions 

我們已經做了很多計算器上搜索無果。我們已經完成了重新安裝IIS的基本工作。確保調用aspnet_regiis,確保svc mimetype被正確註冊(這應該通過返回的「raw」頁面來顯示),執行WCF激活註冊,甚至嘗試在SERVER = TRUE(我們在服務器上安裝RIAServices bin默認部署RIA的東西)。我們在網站上還有一個額外的服務端點,它是「純粹的」WCF,它工作得很好(也使用* .svc URL)。我們在日誌中看不到錯誤消息,Fiddler和IIS日誌只是聲明返回了404。如前所述,我們已經將它部署到了我們認爲最近類似的環境(相同的OS,64位等)。

目前,我們認爲,上述有些奇怪URL語法(具有文件後,路徑段)是有點不正確地IIS管道解釋,但爲了解什麼可能發生的是尋找線索。

任何經驗,見解和理解如何/爲什麼沒有被正確執行的代碼,將不勝感激的方式。

回答

2

我們終於想通了這一點自己,只是在這裏快速增加的答案以供將來參考。

我們的問題是,ExtensionlessUrlHandler是在SVC處理程序之前在IIS中的處理程序映射的有序列表排序。在ExtensionlessUrlHandler重新開始工作之前,一旦我們移動了SVC處理程序。

我們現在正在調查爲什麼這種排序有所不同,但這是另一個故事