2011-01-19 1 views
0

プロダクションサーバーのIISでinetmgrでホストされているドメイン/ Webサイト(HTTR.abc.com)があります。 は、私は、ドメインHTTR.abc.com WCFサービスをホストするときにsvcutilのマシン名を取得する

<services> 
<service behaviorConfiguration="HTTR.Business.HTTRContextServiceBehavior" name="HTTR.Business.HTTRContextService"> 
<endpoint address="http://machinename:83/GTYEBus/abcService.svc" binding="wsHttpBinding" contract="HTTR.Business.IHTTRContextService"> 
</endpoint> 
</service> 
</services> 

を次のように私はURL 「http://HTTR.abcを実行すると、私のWCFサービスのweb.configファイルがあるの下でWCFサービスをホストします。 com/GTYEBus/abcService.svc "ページは正しく表示されていますが表示されています " http:// machinename:83/GTYEBus/abcService.svc?WSDL "を指すWSDLファイル

.svcパスと同じパスを持つWSDL、つまり の代わりに "http://HTTR.abc.com/GTYEBus/abcService.svc?WSDL"と表示する必要がありますhttp:// machinename:83/GTYEBus/abcService.svc?WSDL "

答えて

1

同じ問題に解決策を見つけるために私はこの1つを見つけました。

これは、ホスト名を持たないサイトで問題になっていました。

IIS7.5では、単にホスト名をバインディングのホストヘッダーに追加します。 httpsの場合は、ホストヘッダーが保護されている可能性があります。証明書を擬似ワイルドカード証明書にする必要があります。これは、*を証明書の分かりやすい名前の先頭に置くことによって行われます。その後、ホスト名は編集可能になります。

This linkを使用すると、属性externalMetadataLocationを含めると「http://httr.abc.com/GTYEBusにそれを参照することができますweb.configファイルのserviceMetadataセクションでIIS6

0

の解像度の適切な説明があります/abcService.svc?wsdl "の場所にあります。例:http://msdn.microsoft.com/en-us/library/ms731317.aspx:ここ

<serviceMetadata externalMetadataLocation="http://httr.abc.com/GTYEBus/abcService.svc?wsdl" /> 

はserviceMetaDataの設定部にMSDNの参照です。

これは、追加のIIS構成を必要とせず、はるかにスケーラブルです。

これが役に立ちます。

関連する問題