1

Apache を起動しようとすると、次のエラーが発生しました。

(OS 10013) アクセス許可で禁止されている方法でソケットにアクセスしようとしました。: make_sock: アドレス 0.0.0.0:80 にバインドできませんでした。リッスンしているソケットがありません。シャットダウンしています。ログを開くことができません

前に始めることができました。Windows '.NET Framework 3.5' の機能を有効にした後だと思います。今、私はそれを正しく起動できません。ポートを確認しました:

netstat -aon|findstr "80"
 TCP    0.0.0.0:80             0.0.0.0:0              LISTENING       4
 TCP    [::]:80                [::]:0                 LISTENING       4
tasklist|findstr "4"
System Idle Process              0 Services                   0         24 K
System                           4 Services                   0        304 K

これを解決するには?

4

2 に答える 2

2

オンラインで解決策を検索したところ、MS SQL レポート サービス、すべての MS SQL サービス、Windows リモート管理サービスなどを非難する人々を目にしました。

TMG がポート 80 でリッスンできない (IIS がインストールされていない) Ori Yosefi、MSFT、2010 年 10 月 15 日

    e:\DIR>netsh http show servicestate

    Snapshot of HTTP service state (Server Session View):
    -----------------------------------------------------

    Server session ID: FF00000320000001
        [..]
        URL group ID: FE00000340000001
                [..]
                Registered URLs:
                    HTTP://*:80/

    Request queues:
        Request queue name: DefaultAppPool
            [..]
            Controller process ID: 2724
            Process IDs:
                5412

tasklist コマンドを使用して、検出された PID で実行されているサービスを確認できました。

    e:\DIR>tasklist /svc
    [..]
    svchost.exe                   2724 W3SVC, WAS
    [..]

これらのサービスの構成の詳細を問い合わせることができました。

    e:\DIR>sc qc w3svc
    [SC] QueryServiceConfig SUCCESS

    SERVICE_NAME: w3svc
            TYPE               : 20  WIN32_SHARE_PROCESS
            START_TYPE         : 2   AUTO_START
            ERROR_CONTROL      : 1   NORMAL
            BINARY_PATH_NAME   : C:\Windows\system32\svchost.exe -k iissvcs
            LOAD_ORDER_GROUP   :
            TAG                : 0
            DISPLAY_NAME       : World Wide Web Publishing Service
            DEPENDENCIES       : WAS
                               : HTTP
            SERVICE_START_NAME : LocalSystem


    e:\DIR>sc qc was
    [SC] QueryServiceConfig SUCCESS

    SERVICE_NAME: was
            TYPE               : 20  WIN32_SHARE_PROCESS
            START_TYPE         : 3   DEMAND_START
            ERROR_CONTROL      : 1   NORMAL
            BINARY_PATH_NAME   : C:\Windows\system32\svchost.exe -k iissvcs
            LOAD_ORDER_GROUP   :
            TAG                : 0
            DISPLAY_NAME       : Windows Process Activation Service
            DEPENDENCIES       : RPCSS
            SERVICE_START_NAME : LocalSystem

通常のユーザーとして実行されているコマンドラインからそれらを停止できませんでした.

    e:\DIR>net stop w3svc
    System error 5 has occurred.

    Access is denied.


    e:\DIR>net stop was
    The following services are dependent on the Windows Process Activation Service service.
    Stopping the Windows Process Activation Service service will also stop these services.

       World Wide Web Publishing Service
       Net.Tcp Listener Adapter
       Net.Pipe Listener Adapter

    Do you want to continue this operation? (Y/N) [N]: y
    System error 5 has occurred.

    Access is denied.

次に、サービス GUI から World Wide Web Publishing Service を停止しましたservices.msc。また、このサービスのスタートアップの種類を手動に変更しました。その後、TCP ポート 80 をリッスンするサービスはありませんでした。

    e:\DIR>netstat -ano
    [..no process listening on TCP port 80..]
于 2011-07-26T00:08:52.250 に答える
0

おそらく、TCP 時間待機状態に達したのでしょうか? http://msdn.microsoft.com/en-us/library/ms819739.aspx

「TIME-WAITは、誤ってルーティングされたり遅延したりした可能性のあるTCPセグメントが、同じ接続設定を持つ新しい無関係なアプリケーションに予期せず配信されないようにするのに十分な時間が経過したことを確認します. RFC 793: Transmission Control Protocol DARPA Internet Program Protocol仕様では、ソケット ペアを再利用してはならない時間を 2 つの最大セグメント ライフタイム (MSL)、つまり 4 分として指定しています。この時間は、Windows Server 2003 TCP/IP の既定の設定です。"

サーバー アプリケーションは、SO_REUSEADDRすぐに再起動できるように socket-option を使用することがよくありますが、おそらく Apache のビルドはそうではありませんか?

4 分後に「正常に機能する」かどうかがわかります。:)

于 2011-01-26T10:11:31.770 に答える