How do I free my port 80 on localhost Windows?

498,700

Solution 1

That agony has been solved for me. I found out that what was taking over port 80 is http api service. I wrote in cmd:

net stop http

Asked me "The following services will be stopped, do you want to continue?" Pressed y

It stopped a number of services actually.

Then wrote localhost and wallah, Apache is up and running on port 80.
Hope this helps

Important: Skype uses port 80 by default, you can change this in skype options > advanced > connection - and uncheck "use port 80"

Solution 2

netstat -ano

That will show you the PID of the process that is listening on port 80. After that, open the Task Manager -> Processes tab. From the View -> Select Columns menu, enable the PID column, and you will see the name of the process listening on port 80.

Solution 3

I had this problem previously,

if you see the Task manager(after enabling the view for PID), you will find PID=4 is "port 80 in use by NT Kernel & System; "

Just go to

  1. Control Panel
  2. Programs
  3. Turn Windows features on/off
  4. check if the World wide web services under IIS is checked

If so, Uncheck and netstat(or TCPVIEW) again to see if 80 is free.

Solution 4

netstat -a -b

Should tell you what program is bound to port 80

Solution 5

use netstat -bano in an elevated command prompt to see what apps are listening on which ports.

But Usually following applications uses port 80 in windows.

  1. IIS
  2. World Wide Web Publishing service
  3. IIS Admin Service
  4. SQL Server Reporting services
  5. Web Deployment Agent Service

Stop above applications if running and check!!!

Share:
498,700
Admin
Author by

Admin

Updated on July 08, 2022

Comments

  • Admin
    Admin almost 2 years

    I installed XAMPP 1.6.8 and for some reason it didn't work. Later realized port 80 is not free or not listening. How can I release it or make it free?

    Thanks a lot!

  • Admin
    Admin about 15 years
    No I dont have an IIS. I did use xampp before and it had worked. I guess some other service is sitting on port 80 and not allowing the re-install of Apache service on it.
  • Admin
    Admin about 15 years
    it just gave me bytes , unicast etc etc. did not give what is bound on port 80. Did I miss anything?
  • Admin
    Admin about 15 years
    My xampp Application status shows both apache and mysql state 1 start 1 service 1 But the browser still does not show up the localhost. why so? any pointers? :(
  • aruno
    aruno over 12 years
    Skype also likes to steal port 80, a common unexpected culprit!
  • Vladimir Shmidt
    Vladimir Shmidt over 12 years
    thanks, for me it was SQL Server Reporting Services (MSSQLSERVER) don't know why but when i terminate it by services console, process with pid 4 unbinded from 0.0.0.0:80
  • Sundeep
    Sundeep almost 12 years
    This is good as there can be other processes with the same name. I am wondering if there is any kill command in windows that I can run against the found PID instead of doing it via task manager.
  • Philipp
    Philipp over 9 years
    Win7: start-menu searching for "IIS" brings up the "IIS manager", where you can disable the server.
  • Pavel V.
    Pavel V. over 9 years
    On Windows 7, I couldn't stop the processes due to "access denied", but it showed me names of the processes that would be killed if I had the rights (I didn't have rights for netstat -a -b).
  • MoFarid
    MoFarid over 9 years
    @PavelV. you should run command prompt with administrative rights. open start, and write in search "cmd" right click on cmd and select Run as administrator.
  • rahoolm
    rahoolm over 9 years
    Do you know by any means how to make sure that these services do not use port 80?
  • Aravinda
    Aravinda about 9 years
    or you can use findstar in a batch file windowstechinfo.com/2015/05/…
  • createscape
    createscape over 8 years
    I tried this and it said "the requested operation requires elevation"
  • Aakash Thakur
    Aakash Thakur over 6 years
    taskkill doesn't kill the task. Its still showing port 80 running. @Jijo
  • Jijo
    Jijo over 6 years
    can you try using /f /t at the end, it will forcefully kill the task, i am currently on a linux system, not verified
  • divy3993
    divy3993 almost 4 years
    You are GOD! Bowing Down, by this I was able to find the actual service name that had same Process ID with others, so couldn't figure out before the actual service to kill from task manager. Really Thanks!
  • borat
    borat over 3 years
    Thank you, this fixed my problem. "SQL Server Reporting Services" was using port 90 for me as well.
  • winklerrr
    winklerrr over 3 years
    For me it says: can not obtain ownership information - what now?
  • Bcktr
    Bcktr over 3 years
    Dafuq it works, I have been stopped all HTTP services but still denied using 80 port. Now it's worked after check manually services Thanks a lot dude, god bless you
  • Pouria Ansari
    Pouria Ansari almost 3 years
    the answer is irrelevant This question is about opening a port not vpn connection.
  • User
    User almost 3 years
    This worked for me. I was trying to use nginx on windows and it wouldn't bind giving a nginx: [emerg] bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions) error. There are lot of fixes mentioned online, but this was the most straightforward one. Did require a reboot for me.