Dynamics NAV Server cannot start after enabling soap or odata

Sometimes when you turn on SOAP or OData services, the service tier starts and stops again, and give you this error:

The service MicrosoftDynamicsNavServer$DynamicsNAV90 failed to start. This could be caused by a configuration error. Detailed error information: System.ServiceModel.AddressAccessDeniedException: HTTP could not register URL http://+:9047/DynamicsNAV90/. Your process does not have access rights to this namespace (see http://go.microsoft.com/fwlink/?LinkId=70353 for details). ---> System.Net.HttpListenerException: Access is denied

This is WCF failing to reserve the URL inside http.sys .

The solution is quite easy, just perform the registration yourself, open a command line and execute the following command:

netsh http add urlacl url=http://+:9047/DynamicsNAV90/ user="NT AUTHORITY\NETWORK SERVICE"

Make sure to specify the correct port number, instance name and the user name of the user running the service tier (In my case here, “NETWORK SERVICE”).