Cannot bind to port 80, Microsoft-HTTPAPI/2.0 Lock

心已入冬 提交于 2020-01-06 20:24:17

问题


So, I've been trying to bind Wowza media server to port 80 on our fail-over production server, and I'm encountering something else being bound to the port.

The process reports as 'System' with PID 4. After chasing myself around the web for a while, I found numerous indicators that it could be IIS, MSSQL, Microsoft's Web Deployment Service, or even the Branch Cache service. After exploring all of these options, as well as a couple more that relate specifically to this server, I can say that none of these are actually binding to that IP -- not intentionally anyway.

If I stop my IIS Server through the IIS manager, the port frees up - generally indicating to me that it is likely IIS. After rifling through my bindings somewhere around 6-8 times now, I can say beyond the shadow of a doubt, that none of the sites that I have defined are bound to this IP address. It also counts to mention that there is no longer a 'Default Site' - before that runs through anyone's head.

Further, I've run 'netsh http show servicestate' and combed through the list for any entries matching the problem IP, and have found none.

I've also changed the 'System/CurrentControlSet/Http/ListenOnlyList' registry entry, to no avail.

Does anyone have any other suggestions for locating whatever system process - related to or reliant on IIS - could have me spinning?


回答1:


If System (4) is using the port that usually means that it is HTTP.sys that is using it. IIS uses HTTP.sys for the low level HTTP. The best way to figure out why that is the case is to run the following command from an elevated command prompt and you will see the Process Ids:

    netsh http show servicestate view=requestq verbose=yes

Request queue name: Request queue is unnamed.
    Version: 2.0
    State: Active
    Request queue 503 verbosity level: Basic
    Max requests: 1000
    Number of active processes attached: 1
    **Process IDs**:
        1120
    URL groups:...

and find in there the right reservation, something maybe like: HTTP : // LOCALHOST:80/

IIS will register the reservation with the Request queue name using the Application Pool name which let you figure out easily who is using it.



来源:https://stackoverflow.com/questions/32873225/cannot-bind-to-port-80-microsoft-httpapi-2-0-lock

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!