0

Plain and simple: Is it even possible for a SignalR Application to run off IIS 8.5 on Windows Server 2012 R2, or is this not a compatible setup? There are tons of threads all over Stack Overflow that pose the same issue, that the dynamically generated script located at signalr/hubs is 404ing, but the threads with solutions are not using my iis/server setup.

I tried following the tutorial at https://learn.microsoft.com/en-us/aspnet/signalr/overview/getting-started/tutorial-getting-started-with-signalr but it seems that it only works in Visual Studio's IIS Express. As soon as I move the application to our server, I get the error everyone else on SO is getting.

Here's the supported platforms for Signalr on the official documentation: https://learn.microsoft.com/en-us/aspnet/signalr/overview/getting-started/supported-platforms

It stops short of Windows Server 2012 R2, but the documentation is dated. Any advice is appreciated.

Dai
  • 141,631
  • 28
  • 261
  • 374

1 Answers1

2

Yes, Windows Server 2012 R2 and Windows Server 2016 both support SignalR. Just ensure WebSocket support is enabled and you're all set.

IIS Express is a cut-down version of IIS (which frustratingly does not work with IIS Manager), but internally it uses the same execution engine (including HTTP.sys integration) so it uses the same web.config files as the full-fat IIS too, so it supports SignalR too.

("IIS Express" is a thing because previously VS shipped with a simple web-server called Cassini, which used ASP.NET System.Web.dll for everything, which worked for simple applications but for more complex applications there was sufficient differing behaviour that it made development difficult)

Dai
  • 141,631
  • 28
  • 261
  • 374
  • @klabranche Without WebSockets enabled SignalR falls back to legacy techniques like long-polling - so for the best performance and user-experience you should enable and use WebSockets. – Dai Feb 13 '17 at 18:51
  • Understood. :-) I just wanted to be clear that with or without WebSockets, SignalR works on the stated platform. The answer could be taken to be a reason as to why it wasn't working to anyone reading the question/answer. – Kevin LaBranche Feb 14 '17 at 14:53
  • @klabranche since you've deployed on the same platform, any advice here? I posted a question with code at http://stackoverflow.com/questions/42237137/signalr-example-app-from-official-documentation-does-not-work-on-iis – Johnny Pints Feb 15 '17 at 15:29
  • 1
    @johnny-pints Your missing ~/ on all your pathing... You moved from localhost to a server where the relativity matters..... instead of src="signalr/hubs" try src="~/signalr/hubs" – Kevin LaBranche Feb 15 '17 at 17:00