When working with Local (by Flywheel) for development, you find the following error message: Heads-up! Local's router is having trouble starting. In this post, you will find five different solutions to deal with this problem.
If you are not using Local, note that similar issues are also presented if you are working with XAMPP or Apache servers.
Problem
This problem is presented at Local, a Flywheel software.
You can use Local for staging websites or developing WordPress environments. With this app, you can test any changes or significant features you plan to execute in a reliable (local) environment. Staging sites are typically used by developers to test settings and fix bugs before going to production.
However, I was experiencing issues using Local. Not only me, many many users of Local too. As soon as you created a new site and try to get started with it, you get this message:
Heads-up! Local's router is having trouble starting.
If you try to go to the admin page or visit the site, you won't be able to; you'll get "This site can't be reached". Also, you can keep trying as many times as you want to hit "Retry," but that won't fix this issue.
A similar problem is also presented using another software, XAMPP, which is more popular for this kind of task. However, I am sticking with Local at the moment.
Solution
More often than not, this issue is presented due to a port conflict of apps installed on your computer. Port 80 and port 443 are likely to be the problem; there are some options to resolve this below. Choose yours according to your needs. Here we go.
Option 1: Change Local's Router Mode to localhost
The easiest and quickest way to resolve this issue is to change the Router Mode to localhost. Click on the hamburger menu on the top-left corner, then go to Preferences > Advanced. Here, change the Router Mode from Site Domains to localhost.
The issue will be gone. Nevertheless, I'm not too fond of this option because you waste the HTTPS (secured) access; useful to test other apps that are a must for any modern website.
Take into account that:
- Site Domains routing mode will use the Local site's domain and allow HTTPS.
- localhost routing is less prone to conflicts but does not support HTTPS.
Option 2: Stop the ISS or World Wide Web Publishing Service
Windows 10 runs the World Wide Web Publishing Service (W3SVC); or IIS (Internet Information Services) as a service. To disable it or modify how the service runs, you need to know where to find "Services" in your system. You can stop and restart this service to verify if that issue with the Local app.
- Go to the Windows search, and type services.
- Scroll down in the Services window to find the World Wide Web Publishing Service.
- Right-click on it and select Stop.
Note: New Windows version uses IIS and not W3SVC. If you can't find these services under the Services page, it means that they are not enabled in Windows; ergo, they are not the cause of this issue.
Option 3: Stop All Applications Using Port 80 (HTTP)
You need to check if some other processes are running on port 80 on your computer. If so, you must exit those processes or change their native port.
Most streaming, chat applications use port 80. If you are using Windows and an old version of Skype, you will have this issue. Although, it's not likely that you are using an old version of Skype, or even Skype itself.
If you don't know if you have an app running this port, you can also stop all HTTP functions on Windows.
- On the Windows search, type CMD. Right-click on the CMD application and select Run as Administrator.
- Type net stop http and hit enter.
- Type "Y" to the message and hit enter again and for Windows to terminate the services.
@Local. Try and see if the problem is now solved in the Local app while still using Site Domains under Router Mode.
Option 4: Stop the vmware-hostd.exe or Workstation Server service
First, make sure that is a VMware product issue. In my case, I was using VMware Workstation, so there was a conflict with port 433. If you open the Process tab, you will see vmware-hostd.exe using port 443.
Note: If you don't use Shared VM's (only for former VMware versions), the "VMware Workstation Server" (VMwareHostd) service will be disabled on your computer.
Type "Services" in the Windows search, same as Option 2 of this guide. Look and stop the vmware-hostd.exe or the Workstation services. If the problem is solved in Local, then you know what your problem is. You could stop these services if you are not going to use both Workstation and Local at the same time. Also, you can change these services to start manually. Right-click on the service, select Properties, and change Startup type to manual.
Option 5: Change VMware Workstation 16 Port 443
Finally, this is the option I used. Not that I am using both software simultaneously, but I think it's the most reliable solution.
The problem is due to the vmware-hostd.exe process, which uses port 443, not allowing me to run Local (or even XAMPP and other apps). The Newest VMware Workstation versions don't include the option to change the port from the GUI.
To disable the HTTPS server, change the 443 port in the proxy.XML file. On your computer, go to C: > ProgramData > VMware > hostd, or copy and paste in the File Explorer: C:\ProgramData\VMware\hostd. Locate proxy(.XML), right-click on it, and select Edit.
Note: By default, WordPad is used. You could also use Notepad or any other text editor.
Here, Change the line <httpsPort>443</httpsPort> to <httpsPort>-1</httpsPort>. Save the file.
This setting will disable the HTTPS server of VMware Workstation. Setting HTTPS to a -1 seems to do the job. I am using this value as the HTTP also uses it, and I know it is not enabled on my computer. After this change, Restart the "Workstation" services on your computer and try again on the Local app. This solution will also work if any other software conflicts with VMware Workstation.
Extra: If you are using VMware Workstation 15 (or prior versions) and you are using Shared VMs, you need to use the following solution to change the port:
- Go to Edit > Preferences > Shared VMs menu, and in the resulting dialog, enter a new port number for the VMWare Workstation Server.
- Click OK to save your changes, and then Restart VMWare Workstation for your change to take effect.
Lastly, if you don't use VMware Workstation, examine another software on your computer using port 433, stop the software or change the port.