IIS hosted WCF using net.tcp - asp.net

A version of this question has been asked many times. I cannot find a solution to my particular problem.
IIS 7.5 is hosting a web app as well as a WCF service using tcp. I have this running fine on several development boxes running Windows 7.
I get the error "Could not find a base address that matches scheme net.tcp for the endpoint with binding NetTcpBinding..." when I try running this on a Windows Server 2008 R2. --Even when trying to access it locally, from the same box.
I've enabled the proper bindings (net.tcp)
I've enabled the proper windows features (non-http activation, etc.)
the appropriate Windows services are running (net.tcp listener adapter, etc.)
Anyone have any ideas what else might be the problem?

Related

WCF Service Migrated to IIS 10 - Consistent 503

A computer hosting a WCF service at my work was swapped out from a Windows 7 instance running IIS 7 to a Windows 10 instance running IIS 10.
The WCF service is a third party service that allows remote control of the robotic system the computer is connected to, so I have no access to the source code.
I've tried using MS Deploy to migrate, I've tried perfectly replicating every single setting in IIS and installing all the necessary .Net Framework versions, and I've completely re installed .Net Framework twice.
No matter what I do it always results in a 503 - Service Unavailable. The logs in HTTPERR simply state "N/A" for each failed request to the svc file.
Yes, I've added the svc Mime type and handler.
Also Server Manager has been no help, as it's Windows 10 and not actually a server.
EDIT:
Here are the settings I've copied over:
Application pool for default site uses .Net CLR 4.0, with Application Identity and 32-bit applications disabled.
Application pool for the WCF service uses .Net CLR 4.0, with Network Application as its identity and with 32-bit applications enabled.
It works perfectly fine on the old server, so I'm still at a loss as to why it doesn't work on the new one.
Thanks to Travis Acton for the suggestion to check netsh http show urlacl!
I decided to run the delete command for the port despite it not being shown, and it indicated that the port reservation was successfully deleted. For some reason it was unlisted by netsh.
So now it's all working fine! Thanks so much for the help!

SignalR not functioning on server

I have a windows service I made through visual studio in c#.
It uses SignalR to connect to a SQl database and receive notifications.
However, when I deploy the service onto the server itself (Windows Server 2008R2), it doesn't function. This server is the server hosting the SQL server too.
This is a SELF-HOSTED SignalR service. It is not using IIS or anything of the like to run. It is packaged as a simple Windows Service. Therefore, it doesn't have issues with typical MVC, IIS hosted apps (such as /signalr/hubs pathing, web.config etc.)
On my development computer, I use the WAN IP of the sql server to connect to its database. When I run it, it does everything it's supposed to and fires off a notification everytime server changes.
On the server itself, the service installs fine, but doesn't fire off any notifications. I left the IP as the WAN IP for developmental services and was planning to change it to localhost, etc. once it works but it does not.
For now, I left the service running on my development computer, and it's working great. I'd really prefer it to be on the server itself though, since that's the computer that will always be online.
Any hints or ideas on why this works on my development computer but not the server?
Thanks!
[Edit]
I'm using Windows 7 with Visual Studio 2013 as my development setup.
The service is running on localhost:2165 (arbitrary port). I am able to access that address via a web browser on the server itself.
You don't state what your development operating system is, but if you are using WebSockets, then you need to have a minimum of Windows 8 or Windows Server 2012.
From the documentation, the supported platforms are (emphasis mine):
Supported server IIS versions
When SignalR is hosted in IIS, the following versions are supported. Note that if a client operating system is used, such as for development (Windows 8 or Windows 7), full versions of IIS or Cassini should not be used, since there will be a limit of 10 simultaneous connections imposed, which will be reached very quickly since connections are transient, frequently re-established, and are not disposed immediately upon no longer being used. IIS Express should be used on client operating systems.
Also note that for SignalR to use WebSocket, IIS 8 or IIS 8 Express must be used, the server must be using Windows 8, Windows Server 2012, or later, and WebSocket must be enabled in IIS. For information on how to enable WebSocket in IIS, see IIS 8.0 WebSocket Protocol Support.

Deploy SignalR on small Intranet without using Windows Server

I have an ASP-based application which provides real-time data from a local server to a small group of local users via mobile and desktop browsers (around 10 at any one time). Most of my installations use IIS running on Windows 7 Pro. Until now I have been using ajax short polling but am now prototyping changing the transport to SignalR.
Unfortunately it seems that using IIS on Windows 7 is not an option with since SignalR keeps a large number of connections open and in this configuration IIS has a concurrent connection limit of 10:
http://www.asp.net/signalr/overview/signalr-20/getting-started-with-signalr-20/supported-platforms
I am considering attempting to use IIS Express for my deployments. Is this a route worth pursuing? What are the pitfalls? Do I have any other options (other than to install Windows Server).
Thanks all
You can use self host signalR on a windows service see here for a sample
I use it on a Win7 machine

404 error when accessing WCF Rest service hosted in ASP.net on Windows Server 2008

I have a WCF Rest Server hosted in an ASP.net Application. It was set up using the simple RouteTable setup in global.asax. ON my development machine with IIS 7, it works perfectly, but when I deployed to A windows Server 2008 machine with similar IIS settings, it does not work, I get a 404 error when my ajax methods tries to access the service. I was wondering if WCF is able to be hosted like I have on my development machine on an actual production server? If so what must I do to get it to work.
turns out from careful googling it turned out to be a missing attribute on system.webserver modules section: runAllManagedModulesForAllRequests="true"
Source:
http://www.west-wind.com/weblog/posts/2011/Mar/27/ASPNET-Routing-not-working-on-IIS-70
In my case, it was even more simple!
The symptom was that all POST requests returned 404s.
I'd only just enabled IIS (via Programs and Features -> Turn Windows features on and off) on a new Dev machine that already had Visual Studio fully installed.
I had to enable .NET 4.5 for IIS (via C:\\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i) and then all was well.
It's confusing, because I had already set the IIS App Pool to run under .NET Framework v4.0.30319. There was no warning that I had to separately run regiis.

Deploy a server with VS Express

I am trying to deploy a server that I can hit from a different computer in my office. I only need one, two computers to hit it max. I am using Visual Studios Express 2012 RC for Web and have the whole website made, but I can't figure out how to actually deploy it. When I click play to debug it (after I have told it to build the web site) it brings it up on my computer that I built the server on but I can't hit it from another computer. The address it gives me on the browser is localhost:XXXXX. I know local host means that computers IP and I have tried that repeatedly. I am stumped. Please help. I thank you for any help you give in advance. Also if you need more information please feel free to ask.
You can't run it from Visual Studio Express, you have to deploy the web application to an IIS server. You can't access the site if VS is not running, because it creates a local, specialized development server when you start the application, whether with debugging or not. You need to configure IIS on your web server. What is the OS? Once you go through a tutorial to set it up, you will copy your code to an application folder that will be created for you. The details vary by IIS version.
Internet Information Services (IIS) – formerly called Internet
Information Server – is a web server application and set of feature
extension modules created by Microsoft for use with Microsoft Windows.
IIS 7.5 supports HTTP, HTTPS, FTP, FTPS, SMTP and NNTP. It is an
integral part of the Windows Server family of products, as well as
certain editions of Windows XP, Windows Vista and Windows 7. IIS is
not turned on by default when Windows is installed. The IIS Manager is
accessed through the Microsoft Management Console or Administrative
Tools in the Control Panel.
http://en.wikipedia.org/wiki/Internet_Information_Services
http://www.iis.net/

Resources