5
votes

I followed the following tutorial on how to achieve self-hosting of SignalR on a remote Mono server: http://www.asp.net/signalr/overview/signalr-20/getting-started-with-signalr-20/tutorial-signalr-20-self-host

With the help of the following webpage, I was able to get the remote server to start listening for remote clients (but only start, not actually handle requests properly): http://social.msdn.microsoft.com/Forums/vstudio/en-US/4ff53c95-11e1-4f65-88fd-72deea0eba74/wcf-service-library-vs-2010-not-working?forum=wcf That page says to add "<loadFromRemoteSources enabled="true" />" in App.Config, under "<runtime>".

The server can start listening (it outputs "Server running on http://*:8085"), but the moment it receives a request for "/signalr/hubs", it outputs the following error message:

Invalid type Microsoft.Owin.Security.AuthenticationTicket for instance field Microsoft.Owin.Security.Infrastructure.AuthenticationHandler+d_0:5_1 Invalid type Microsoft.Owin.Security.AuthenticationTicket for instance field Microsoft.Owin.Security.Infrastructure.OwinRequestExtensions+Hook+d_0:5_1

The client then receives the following error message: "GET http://ServerHere.com:8085/signalr/hubs 500 (Internal Server Error)".

After that, all I can do with the server is to press "enter" for it to terminate.

I'm using Mono Runtime 3.2.5 and Ubuntu 11.10.

Thank you very much in advance.

1

1 Answers

3
votes

It turns out that the instructions had a mistake.

Instead of writing WebApp.Start(url), write WebApp.Start<Startup>(url).

This will cause the Configuration(IAppBuilder app) method in the Startup class to be called.

The server's error messages still show up, but they don't hinder anything.