Cannot start the website because administrative privileges are required to bind to the hostname or port

This error was thrown when I ran the newly downloaded BlogEngine.NET code from Visual Studio 2015.
First thing first, this has got nothing to do with ‘Run as administrator‘ option. The error states that there is a permission issue on the port on which IISExpress was attempting to run the site. I hadn’t changed anything to the original code base. So it was apparent that the port setting must have got imported. My understanding was that Visual Studio auto manages this setting, i.e., if the attempted port is busy, then VS automatically finds the next available slot. As it turned out, this is not the case.

 
Anyways, the solution is to remove the old references of the url (IISUrl) and the port (DevelopmentServerPort) from the csproj file. Apparantly, if you don’t provide any specific url & port, Visual Studio will automatically look for an available port. Yes! automatic.

Following are the steps to accomplish the same:

  • First, ensure that, ‘Apply server settings to all users (store in project file)‘ is checked.
  • From the Solution Explorer in Visual Studio, right click the web project and select ‘Unload Project‘.
  • Next on the same project, right click and select ‘Edit‘.
  • Find the xml tags and and remove them.
  • Reload the project and run.
As you can see in the address bar, the site’s running and is doing so on a different port.
Advertisements

Problem while accessing your DotNetNuke site from outside the localhost running on IIS Express [WebMatrix]

The Good Thing

First of all I would like to share my experience with DotNetNuke, which has been nothing but great. It took me hardly 15 days to learn DNN, create an asp.net site in it and upload it to a remote server from where it can be accessed publicly.

I must also add that my requirement was pretty simple hence there was no need for me to create a module in it instead, I used the available modules along with some free modules from CodePlex.

Problem

The Website was running perfectly in my localhost. Here, I would like to add that I was running the site in IIS Express (Web Matrix 2).

So to upload the site to the server, I followed the standard procedure, i.e, I took the backup of the database, which I restored on the server, then I copied all the DNN files from my local computer up to the server.

Now, I could access my site from within the server, but when I tried to access from an outside environment, I got this error, BAD REQUEST 

After googling a bit I found that I needed to add a site alias (port alias) to my site in Site Settings under Host. In the alias, I needed to add a new alias replacing the localhost with server’s IP address.

Solution

I thought that would solve my problem, unfortunately, that was not to be. I was still getting the same error. Eventually, I saw that though adding a port alias was compulsory as otherwise the site will not be accessed by that url, along with that I also had to modify the url in my Web Matrix (ver 2) under Settings replacing the localhost part with the server’s IP address.

I guess my Web Matrix was refusing any request with url other that localhost. Once I added the server’s IP address in place of localhost, my site became accessible publicly.

One more you also need to run  the WebMatrix in the administrator mode otherwise you may get a URL Binding Error if you try to modify the localhost. [Win 7+]