Tại sao quá trình hệ thống lắng nghe trên Cổng 80?


81

Tôi đang chạy Windows 7 RC1. Tôi gặp nhiều vấn đề khi IIS hoạt động trên hệ thống của tôi và hôm nay khi tôi cài đặt một ứng dụng mới và tôi đã thử tải nó bằng http: \ localhost \ MyApplication Tôi hoàn toàn không gặp lỗi và tôi không tải được trang. Chỉ là một trang trống trắng xinh xắn.

Tôi đã thực hiện một số hoạt động đào và tôi đã tìm thấy điều gì đó về một quá trình khác khi nghe trên cổng 80 vì vậy tôi đã thực hiện quét bằng cách sử dụng netstat -aon | findstr 0.0:80và phát hiện ra rằng PID 4 đang nghe trên cổng đó.

PID 4 không hiển thị trong trình quản lý tác vụ nên tôi đã khởi động Process Explorer và nó cho tôi thấy rằng PID 4 là quy trình Hệ thống. (Nhiều tìm kiếm google dường như chỉ ra rằng Hệ thống luôn sử dụng PID 4).

Kể từ đó tôi cơ bản bị mắc kẹt. Tôi không biết tại sao Hệ thống cần cổng 80 và phải làm gì với nó.

Nếu bạn google các chuỗi sau, bạn sẽ tìm thấy hai bài viết Chuyên gia trao đổi hữu ích ở đầu kết quả tìm kiếm và bạn có thể đọc chúng để biết một số thông tin hữu ích.

(Nếu tôi đã đưa URL trực tiếp đến các trang thì Experts-Exchange sẽ yêu cầu bạn trả tiền ... nhưng khi bạn nhấp vào kết quả từ tìm kiếm google, bạn có thể cuộn tất cả các đường xuống phía dưới để đọc các trao đổi.)

Dưới đây là các tìm kiếm của google ...
"Quá trình hệ thống đang lắng nghe trên cổng 80 (Vista)"
"Quá trình hệ thống đang lắng nghe trên cổng 80 và ngăn không cho trang web mặc định của IIS chạy"

Mục nhập cuối cùng từ kết quả đầu tiên cho thấy cách thực hiện theo dõi http.sys tại URL sau:

http://bloss.msdn.com/wndp/archive/2007/01/18/event-tracing-in-http-sys-part-1-capturing-a-trace.aspx

Dấu vết cho thấy không có gì hữu ích. Có suy nghĩ gì không?


Các vấn đề tương tự ở đây, ngoại trừ, tôi đã thử tất cả các câu trả lời như được đề xuất và không có gì. Tôi không thể bắt đầu tắt dịch vụ vì đây là máy chủ đám mây ngoài trang web.
Jerry Dodge

Ý bạn là bạn đang chạy Windows 7 SP1 chứ không phải RC1?
cmorse

4
Bạn đang chạy Skype? support.skype.com/en/faq/FA148/
Mạnh

Có lẽ điều đó không thực sự giải quyết được vấn đề của bạn, dù sao bạn cũng có thể thay đổi cổng Apache thành 8080... Chà, đó không phải là một giải pháp, nhưng có thể hoạt động tạm thời cho đến khi bạn có được giải pháp phù hợp ... giải pháp @rakslice đã giải quyết vấn đề cho tôi
Girardi

Điều skype là giải pháp! tắt skype và bắt đầu apache. làm xong!
Codebeat

Câu trả lời:


28

Bài đăng này về Bắt Apache chạy trên cổng 80 trên Windows 7 (kho lưu trữ internet) mô tả quan điểm của bạn.

Có vẻ như dịch vụ ' http.sys' (Windows Remote Management?) Được bật theo mặc định trong Windows 7.
Chạy qua các nhận xét trên liên kết đó để biết thêm một số ghi chú ...

trang web hypen không nhất thiết phải có câu trả lời duy nhất.


1
Một bài viết tuyệt vời: devside.net/wamp-server/...
gai

2
Và điều này vẫn còn liên quan đến ngày hôm nay với Windows 8.1
Sverrir Sigmundarson

3
Trang web đang ngoại tuyến. Bạn có thể thêm thông tin cần thiết cho câu trả lời?
fixer1234

4
Đối với tôi, đó là Dịch vụ xuất bản World Wide Web - được đặt thành tự động theo mặc định và phải sử dụng cổng 80.
rockerston

1
Nâng cấp từ windows 7 lên windows 10 và nó bật World Wide Web Publish Service thành tự động. Điên vì tôi thậm chí không sử dụng IIS.
Phil_1984_

49

Service Dịch vụ đại lý triển khai web 'chạy trên cổng 80 dưới dạng Hệ thống. Bạn có thể chạy nó nếu bạn đang sử dụng WebMatrix.


Liên kết liên quan: eat.cheezburger.com/author/johnc . Tôi đã gỡ cài đặt hai porgram được liệt kê: "microsft Web Deployment 2.0" và "Web Deployment Tool" (cũng như chính WebMatrix)
Frank Schwieterman


1
Xem stackoverflow.com/questions/5867392 để biết thông tin về cách thay đổi cổng này.
tony722

Tôi đã dừng Dịch vụ đại lý triển khai web và đặt thành Khởi động thủ công, sau đó xác nhận rằng tôi vẫn có thể Xuất bản lên IIS trên máy chủ này từ Visual Studio và mọi thứ đều tốt. Cổng 80 hiện có sẵn cho tôi và chức năng khác của tôi vẫn hoạt động.
JMD

net stop "Web Deployment Agent Service"giải phóng 80 cho tôi.
Philippe

46

Mở Services.msc và dừng dịch vụ này "Dịch vụ báo cáo máy chủ Sql (MSSQLSERVER)"

nhập mô tả hình ảnh ở đây

Tôi đã thử MỌI THỨ, nhưng điều đó hiệu quả với tôi:

hướng dẫn thêm về cách dừng dịch vụ dưới đây

  1. Nhấp chuột phải vào Máy tính của tôi
  2. Chọn Quản lý
  3. Nhấp đúp chuột vào Dịch vụ và Ứng dụng
  4. Sau đó nhấp đúp chuột vào Dịch vụ
  5. Nhấp chuột phải vào "Dịch vụ báo cáo máy chủ Sql (MSSQLSERVER)"
  6. Chọn Dừng ... và voila, cổng 80 đã được phát hành

7
+1. Đó thực sự là SQL Server trong trường hợp của tôi.
Assaf Levy

Điều này làm việc cho tôi quá. Tôi đã dừng tất cả các dịch vụ liên quan đến SQL (bao gồm cả dịch vụ này) và cổng 80 đã được phát hành.
Đánh dấu Lakata

+1 nhưng tôi cần SSRS chạy vì vậy tôi đoán trong tương lai tôi cần nói với SSRS để sử dụng một cổng khác?
Chris Moutray

"Không sử dụng cổng đó? Tôi sẽ lấy cái đó! Ôi xin lỗi, bạn có cần cái đó không? Bạn không nhận được bản ghi nhớ à?"
batCattle

1
@AssafLevy bình luận của bạn là một sự bất đồng với mọi người và những thứ trên đám mây và có thể khiến một số người nghĩ rằng câu trả lời không tốt như vậy. Đó không phải là SQL Server, đó là báo cáo máy chủ SQL. Máy chủ SQL chạy trên 3306. Báo cáo máy chủ SQL là vấn đề và chạy trên cổng 80
barlop

19

Bạn có thể tạm thời dừng dịch vụ HTTP từ dòng lệnh:

  1. Chạy một dấu nhắc lệnh của quản trị viên (ví dụ: Bắt đầu, tìm kiếm cmd, nhấp chuột phải vào nó, chọn "Chạy với tư cách quản trị viên", phê duyệt lời nhắc UAC nếu có.)
  2. Thể loại net stop HTTP
  3. Nếu có các dịch vụ đang chạy khác phụ thuộc vào dịch vụ HTTP, bạn sẽ nhận được một danh sách; kiểm tra kỹ xem có bất cứ điều gì được liệt kê ở đó mà bạn không thể chịu được nếu không có. Hoặc, nếu bạn chỉ dừng HTTP để sử dụng cổng 80 tạm thời, hãy ghi lại những dịch vụ phụ thuộc mà bạn muốn khởi động lại sau khi hoàn thành cổng. Dù bằng cách nào, nếu nó ổn, hãy ytiếp tục.
  4. Một số dịch vụ phụ thuộc có thể đưa ra các cảnh báo kiểm soát dừng hủy hoạt động; chỉ cần lặp lại net stop HTTPcho đến khi nó dừng lại (tức là cho đến khi nó nói The HTTP service was stopped successfully.)
  5. Sau đó, bạn có thể khởi động lại bất kỳ dịch vụ phụ thuộc nào, sử dụng net starthoặc bằng cách sử dụng mục Dịch vụ trong Công cụ quản trị và dịch vụ HTTP sẽ được khởi động lại tự động.

1
Điều này rất hữu ích để xác định các dịch vụ phụ thuộc - cảm ơn!
Rory

đây là giải pháp cho tôi
Girardi

Đối với tôi, nó đã dừng tất cả các dịch vụ liên quan, sau đó nói "Không thể dừng dịch vụ HTTP" và bắt đầu net stop httplại bảo tôi "thử lại sau". Có gì không ổn với hệ thống của tôi :-)
Tominator

Sử dụng net stop HTTPlàm việc cho tôi.
Paul Williams

Nếu bạn nhận được một try again later message, bạn có thể đang chạy Dịch vụ Triển khai Web của Microsoft. support.microsoft.com/kb/2597817 Nếu bạn thực sự sử dụng điều đó để duy trì IIS, có lẽ bạn không muốn dừng HTTP ở vị trí đầu tiên =).
rakslice

3

telnet localhost 80 trả về httpAPI / 2.0, nghĩa là "Dịch vụ báo cáo máy chủ Sql". Dừng cùng phát hành cổng 80.


Tôi thấy rằng các dịch vụ báo cáo máy chủ SQL cũng là thủ phạm.
JT

Đây là một công cụ gỡ lỗi hữu ích, để sử dụng 'telnet' để có được nhiều thông tin hơn trình duyệt web sẽ cung cấp cho bạn. Cảm ơn. Dịch vụ báo cáo máy chủ SQL cũng là thủ phạm trong trường hợp của tôi.
Đánh dấu Lakata

0

Lấy ProcessExplorer, chạy nó, mở các thuộc tính TCP / IP của mọi tiến trình (dịch vụ), tìm tiến trình (dịch vụ) nghe cổng http (80) và tắt nó đi.

Tôi thấy Autodesk EDM Server đang nghe cổng http (80).


3
Điều này không hoạt động đối với các dịch vụ chạy bên trong hệ thống (nghĩa là với chỉ số PID là 4)
N Reed

Tôi nghĩ bạn tốt hơn nên làm 'netstat -anbo'. Nó sẽ cho bạn biết ngay những gì trên cổng 80 ... ngoại trừ nếu đó là PID 4.
Đánh dấu Lakata
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.