我已經嘗試聯繫技術支持與這個問題,但它已經超過三個星期,因爲他們說,他們會看看它。也許有人已經(並解決了)類似的問題:CryptoLicensing - 使用主機名連接到服務
我在嘗試使用主機名而不是IP地址連接到(客戶部署的)許可證服務時出現問題。 如果服務器的IP更改,這將允許所有內容保持運行。 我生成了http://HOSTNAME:8081/
的客戶部署服務,並嘗試使用此URL進行連接。 當查驗許可證服務,則返回以下異常:
License not valid for running license server.
ALLOWED: = http://HOSTNAME:8081/ , http://fe80::21d7:f28f:a8b2:6542%10 , http://fe80::2cf3:1cea:3f57:1fd%12 , http://192.168.254.2 , http://2001:0:5ef5:79fd:2cf3:1cea:3f57:1fd ,
REQUESTED: http://[fe80::21d7:f28f:a8b2:6542%10]:8081/Service.asmx/PingLicenseService
通過與主機名的URL聯繫服務似乎自動使用(第一個?)的IPv6地址,包含在方括號(它應該,否則它無法計算出端口號)。 但是,允許的URL包含沒有這些方括號的IPv6地址。 這是一種錯誤嗎? (端口號似乎也丟失了。)
我嘗試在運行時手動從主機名獲取IPv4地址,但隨後得到: 遠程服務器返回錯誤:(400) Bad Request
。
當我嘗試使用IPv4或IPv6瀏覽到服務解決自己(在瀏覽器中),錯誤被擴展爲:
HTTP Error 400. The request hostname is invalid.
這也是奇怪,因爲它們都包含在允許的URL 。似乎只有ServerSettings.xml中的URL是有效的,我有http://HOSTNAME:8081/
。當我再次將ServerSettings.xml中的地址更改爲IPv4地址時,我可以使用主機名或IPv4地址從軟件進行連接。
是否有可能防止客戶在每次服務器IP更改時都必須編輯ServerSettings.xml?
的開發者的支持IPv6確實允許許可服務使用主機名的工作。謝謝。 – 2012-02-17 08:11:20