Silverlight5アプリケーションでSignalRを使用しています。IIS 7.5のデフォルトのWebサイトから離れた「アプリケーション」(つまり、localhost / subsite)でアプリをホストすると、Fiddlerは「/ signalr/negotiate」に対して404を取得することを示します。
IISアプリケーションパスが考慮されていないようです。「/subsite/ signalr/negotiate」を要求しているはずです。正しいURLプレフィックスを使用するにはどうすればよいですか?
更新:解析を行わずにSilverlightアプリで実際のルートURIを取得するのは難しいように思われるため、次のコードを使用する必要がありました。
string xapLocationUri = Application.Current.Host.Source.AbsoluteUri;
string rootUri = xapLocationUri.Substring(0, xapLocationUri.IndexOf("/ClientBin"));
hubConnection = new HubConnection(rootUri);
IISのルートWebサイトから離れたアプリケーションでホストされている場合は、次のことを実際に信頼することはできません。
Application.Current.Host.Source.GetComponents(UriComponents.Scheme | UriComponents.HostAndPort, UriFormat.Unescaped)