web-dev-qa-db-ja.com

Nginx-エラー:0.0.0.0:80へのbind()が失敗しました。アクセス拒否

Nginxを実行しようとしていますが、次のエラーが表示されます。

0.0.0.0:80へのbind()が失敗しました(10013:アクセス許可で禁止されている方法でソケットにアクセスしようとしました)

動作させるために必要な変更についてヘルプを提供してください。

80以外のポートで実行しようとしましたが、動作します。しかし、80で実行する必要があります。

注:Windows 7上で、管理者としてコマンドプロンプトを実行して実行しています。

26
Sagar

ポートがすでに使用されている場合は、デフォルトのポート80を使用されていない別のポート(多分8070)に変更できます。 conf\nginx.conf

server {
    listen       8070;
    ...
}

起動後、localhost:8070にアクセスできるはずです。

44
Daniel Treiber

ポート80をバインドするにはadminまたはrootである必要があります。rootとして実行できない場合にできることは、アプリケーションが8080などの他のポートをリッスンしてから、80から8080に向けられたメッセージをリダイレクトすることです。 Linuxでは、iptablesを使用してメッセージをリダイレクトします。

4
rodolk
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)

80ポートがIIS(Windowsマシン)をリッスンしていました。停止IIS 80ポートを解放しました。

問題は解決されました... !!

1
Surya Venky

ポート80がすでに使用されている可能性があります。使用中かどうかを確認するには、コマンドプロンプトを開き、netstat –anbおよびポート80を探します。アプリケーションまたはサービスを発見したら、タスクマネージャーを使用して強制終了します。

それを使用しているサービスの場合は、services.mscrunコマンドから。

0
Samer Tufail