Đôi lúc bạn muốn start ứng dụng sử dụng Apache, Jetty hoặc mở ứng dụng port 80 nhưng không thể start được vì 1 lý do đơn giản là cổng 80 đang được sử dụng bởi các ứng dụng khác. Bài viết này tôi sẽ hướng dẫn các bạn kiểm tra ứng dụng nào đang sử dụng cổng 80 trên Windows. Để có thể chạy được Apache (sử dụng Xampp, …)
Thường thì các ứng dụng sau sử dụng cổng 80 trên Windows:
- Skype
- IIS
- IIS Admin Service
- World Wide Web Publishing service
- SQL Server Reporting services
- Web Deployment Agent Service
- HTTP Server API
Việc làm đơn giản là hãy stop hết các ứng dụng, services đó đi ! Dưới đây là hướng dẫn cơ bản cách kiểm tra và stop ứng dụng đang hoặc mặc định sử dụng cổng 80.
1: Skype
Đối với Skype, bạn chỉ cần thoát ứng dụng là ok, hoặc thay đổi tùy chỉnh Skype: Tools > Options > Advanced > Connection: Bỏ check “Use port 80 …” đi
2: IIS
Hãy Stop IIS hoặc gỡ nó đi nếu không sử dụng
3: Services
Mở trình quản lý services, mở cửa sổ run, gõ lệnh:
Stop các services sau:
- World Wide Web Publishing service
- SQL Server Reporting services
- Web Deployment Agent Service
4: HTTP Api Service
Đây là service cho phép các ứng dụng liên lạc với nhau thông qua HTTP mà không cần sử dụng IIS – Microsoft Internet Information Server. Các ứng dụng có thể đăng ký để nhận hoặc gửi các http request.
Sử dụng lệnh sau trên CMD – Command Prompt
5: Netstat
Trường hợp, không rơi vào các trường hợp trên (tức là vẫn không khởi chạy được apache2), hãy sử dụng lệnh netstat để kiểm tra các ứng dụng, services đang mở cổng 80 giao thức tcp.
Mở CMD với quyền Administrator, gõ lệnh sau:
Hoặc thêm lệnh find để giới hạn kết quả tìm kiếm
1 | netstat -abno -p tcp | find "80"
|
Bạn sẽ thấy một danh sách các ứng dụng đang nghe trên các cổng tcp, tương ứng với process id. Hãy sử dụng Task Manager để kill ứng dụng có process id tương ứng.
netstat -abno -p tcp
Note: Để thấy được process id trên Task Manager (tab: Processes), chọn: Views > Select columns > PID (Process Identifier)
Chúc bạn thành công !
0 Comments