[SOLVED 2022] Permission denied in WSL: Apache2 startup failed

by Dillon -

Ubuntu

Windows Subsystem for Linux is a great tool for Web Developers using the Windows operating system. With the release of WSL2 which brought the introduction of a real Linux Kernal, the environment saw huge speed improvements, cementing itself as the preferred development environment for many developers. However, some Windows updates have proven to cause problems with software installed on WSL. In this post, we are going to walk through the steps to solve “Apache2 startup failed: Permission denied in WSL”.

Apache2 startup failed: Permission denied

(13)Permission denied: AH00072: make_sock: could not bind to address [::]:80
(13)Permission denied: AH00072: make_sock: could not bind to address 0.0.0.0:80

What causes a permission denied error?

Apache listens on port 80 for HTTP connections and 443 for HTTPS connections. The error above occurs when another service is already listening on these ports. In this case, after a Windows update, the IIS (Internet Information Services) service started up, listening on port 80.

Solve Apache2 startup failed error

To fix the issue, we need to stop the IIS service.

Step 1

Search and open ‘Services’ in the Windows start menu

Step 2

Find and select ‘World Wide Web Publishing Service’. This service provides web connectivity and administration through the IIS manager.

Step 3

Right-click and hit stop. This will only stop the service until your restart your machine.

Step 4

Check the startup type is of the service. This is probably set to Automatic. You may want to simply stop the service for now, but it may cause more issues in the future, so it’s best to disable the service from starting up again.

If you use IIS alongside your WSL Apache2 service, you may want to start the service up again when you require it.

To disable the service from starting automatically, right-click and select properties. This will open an additional popup.

Find startup type and set the field to Disabled. Then apply the changes.

Step 5

Open a terminal, and start the Apache2 service.

sudo serivce apache2 start

Apache 2 should now start as expected.

You can learn more about Windows Subsystem for Linux by visiting the official documentation or you can get help with setting WSL up by following our tutorial.

WSL_Ubuntu

does not work. same error.

Dillon

Im sorry to hear this. Can you provide your Ununtu version and WSL version please?

GBecci

Hi Dillon, many thanks, it worked fine for me, I have to work out the IIS issue.

Dillon

Thats great!

Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.