0

I have an applicationhost.config file which is configured for both http and https protocols.

<site name="Application.Namespace" id="2">
            <application path="/" applicationPool="Clr4IntegratedAppPool">
                <virtualDirectory path="/" physicalPath="C:\projects\services\Application\Application.Namespace" />
            </application>
            <bindings>
                <binding protocol="http" bindingInformation="*:3042:localhost" />
                <binding protocol="https" bindingInformation="*:44305:localhost" />
            </bindings>
        </site>

The problem I am having is that when i run my solution, IIS only runs this instance in HTTPS and on port 44305 and completely ignores the HTTP:3042 binding all together.

When I navigate to http://localhost:3042 it simply tells me that the page cannot be found. When I nativate to the HTTPS port, what I expect to find on HTTP is getting served correctly however.

I have tried reinstalling iis, explicitely deleting https all together, Testing other bindings (same behaviour is present). So I'm not sure what to do or where to even start with handling this issue.

Has anyone else experienced this, or have any intuitions as to something or somewhere to start looking at?

Any help would be appreciated. thanks

A little extra info:

  • I'm running IIS express 10
  • I'm using .Net Framework 4
  • 1
    Please explain what is "when i run my solution". If that's VS related, you should try to launch IIS Express from command line directly and compare the result. Don't be trapped if it is a VS issue. – Lex Li Jan 17 '19 at 14:24
  • Thats exactly it... I'll try it now and see if there is a difference. – Ja Superior Jan 19 '19 at 00:16

1 Answers1

0

I had this exact same issue.

I fixed it by doing the following:

  1. Open a command prompt with admin privileges and run netsh http add iplisten ipaddress=::
  2. Delete the .vs which might be in your projects folder
  3. Delete %USERPROFILE%\Documents\IISExpress\config
  4. Reboot