2015-11-06 77 views
1

我正在使用ColdFusion 11服務器發生一些奇怪的行爲,該服務器(其中包括)發佈一些通過SOAP和HTTP訪問的Web服務。服務器本身是Windows 2012,運行IIS。實際文件夾的配置如下:在ColdFusion中使用不同文件夾映射的SOAP/HTTP

Folder config

IIS配置了, 'BOB' 和 'BOB_Services' 兩個網站。兩者都已使用CF服務器配置工具進行配置,以便CF處理.cfc,.cfm文件。他們共享一個共同的CFIDE配置。

  • BOB的根是I:/的Inetpub/BOB
  • BOB_Services的根是I:/的Inetpub/BOB_Services

有在CF管理員配置爲從 '/' 的文件夾映射到「I: /的Inetpub/BOB」。不要問我爲什麼,似乎沒有人知道。

通常在BOB_Services只有services.cfc文件。昨天我們不小心將同一個文件複製到BOB根文件夾中,我們所有使用BOB_Services\services.cfc的SOAP服務都開始發生錯誤。然而,我可以通過HTTP查詢相同的Web服務(例如使用http://bob/services.cfc?method=function1&param1=0 ....等)並獲得有效的結果。

+2

在這個問題中沒有問題 - 它只是關於你做了什麼和發生了什麼的一系列陳述。有什麼特別的你想要得到答案嗎? – MT0

+0

@ MT0 - 不,我提供了一個'問題',所以我可以記錄這種行爲。在我們對這個問題抨擊的時候,我無法在Google上找到任何東西,所以希望下一個遇到它的可憐的SAP可以更輕鬆一些。 :) – Juffy

回答

0

這是一個參考答案,以防其他人遇到這種奇怪的行爲。

似乎當BOB_Services/services.cfc使用HTTP GET,該文件夾映射

'/' -> 'I:/inetpub/BOB'

被忽略,並用於處理該請求的實際的文件稱爲是I:/inetpub/BOB_Services/services.cfc

BOB_Services/services.cfc函數使用SOAP客戶端被調用時,該文件夾映射被調用,並用於處理該請求中的文件是I:/inetpub/BOB/services.cfc如果它存在。如果不存在,則按預期使用文件I:/inetpub/BOB_Services/services.cfc

此行爲似乎是完全可重複的 - 我可以做出SOAP請求,獲得一個結果,更改映射,發出另一個請求並獲得其他結果。

相關問題