2

I cannot start apache on xampp, it says Busy...

I have googled this many times and I have tried the following solutions:

  1. Skype no longer uses port 80/443
  2. Teamviewer no longer uses port 80/443
  3. Adding the NoRun key to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP (Solution found here)

But none of these work, when I visit localhost on a browser it will load but just give a blank page, even thought apache isn't started.

I have also run netstat -ano on command prompt, I get the following entries using port 80:

TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4 and TCP [::]:80 [::]:0 LISTENING 4

Both are being used by PID 4 which is System when I look it up in task manager.

I have also googled around and seen that this may be caused by VMWare which I have installed but I cannot seem to find a solution for this, can anyone help me with this please. If you need more information then please comment and I will add it.

EDIT:

After running the beta control panel, I get the following in the logs:

12:57:41 [apache] Possible problem detected: Port 80 in use by "system"! 12:57:41 [apache] Possible problem detected: Port 443 in use by "vmware-hostd.exe"!

Dan
  • 123
  • 1
  • 1
  • 5

3 Answers3

3

In VMware go:

Edit < Preferences < Shared VMs

and Disable Sharing (or change the ports if you need the functionality)

Alex
  • 46
  • 1
2

Try running TCPView from Microsoft sysinternals. It will show you a detailed list of all TCP and UDP endpoints on your system ... It can also report the name of the process that owns the endpoint.

Update: If you can't find the program running on that port, it might be a solution to simply change the port of XAMPPs Apache. The directive you need to change is Listen 80. Maybe set this to 8000 instead and point your browser to http://localhost:8000/.

Another thing you can try is -if you have VMware installed (Server?) - to check the Windows services panel and try to shut it down there as I suppose it is a service.

Chris
  • 1,155
  • 2
  • 9
  • 18
  • I cannot find anything which is using port 80 in either the local or remote port columns. – Dan Mar 04 '12 at 12:55
  • I updated my answer. If you shut down the service, you might not need to change any directive as mentioned above. – Chris Mar 04 '12 at 13:07
  • I have changed the port in `httpd.conf` and that seems to be working now, thanks. – Dan Mar 04 '12 at 13:09
2

You need to install apache server as a system service (from the apache control panel) - then restart the machine.

You might also need to kill off other processes occupying port::80...

Robot
  • 121
  • 5