[解決済み] 0.0.0.0:80」と「:80」でのリスニングの違いは何ですか?
2022-02-16 19:32:37
質問
を使用する場合
http.ListenAndServe
の違いは何ですか?
http.ListenAndServe("0.0.0.0:80", nil)
そして
http.ListenAndServe(":80", nil)
? どちらのバージョンも、すべてのインターフェイスで、ポート
80
?
解決方法は?
その
http.ListenAndServe()
関数は最終的に
net.Listen()
. のドキュメントは
net.Listen
には、提供されたネットワークにバインドすることが書かれています。
TCP ネットワークの場合、address パラメータの host が空またはリテラルな未指定 IP アドレスの場合、Listen はローカルシステムの利用可能なすべてのユニキャストおよびエニーキャスト IP アドレスでリッスンします。IPv4のみを使用するには、network "tcp4"を使用します。
しかし、そのソースを見ると
http.ListenAndServe()
が指定されていることがわかります。
"tcp"
をネットワークとして使用し
"tcp4"
. つまり、どちらの呼び出しも利用可能なすべてのインターフェイスにバインドされるはずです。しかし、golangのソースをさらに掘り下げていくと、結局は
internetAddrList()
を区別していることがわかります。
host
の値と、ipv4アドレスが指定されている値です。つまり、golangは指定されたipv4アドレスを、そのインターフェイスにのみバインドすることを示すものとして実際に扱っているのです。
関連
-
[解決済み] HTTPヘッダーの大文字と小文字は区別されますか?
-
[解決済み] X-REQUEST-ID httpヘッダーとは何ですか?
-
[解決済み] ブラウザによって異なるURLの最大長とは?
-
[解決済み] URI、URL、URNの違いは何ですか?
-
[解決済み] HTTPファイルアップロードの仕組みを教えてください。
-
[解決済み] Goの:=と=の演算子の違い
-
[解決済み] ベーシック認証における「レルム」とは
-
[解決済み】HTTPのPOSTとPUTの違いは何ですか?
-
[解決済み】WindowsでTCPまたはUDPポートをリッスンしているプロセスを見つけるにはどうすればよいですか?
-
[解決済み] Angular2 http.get()、map()、subscribe()とobservableパターン - 基本的な理解
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ERR_INVALID_CHUNKED_ENCODING エラーの修正方法を教えてください。
-
youtubeマッチチャンネル(チャンネル)
-
[解決済み] POSTとPUT HTTP REQUESTの違いは何ですか?
-
[解決済み] ベーシック認証における「レルム」とは
-
[解決済み】http getリクエストにヘッダーを設定する方法は?
-
[解決済み】no-cacheとmust-revalidateの違いについて
-
[解決済み】ユーザーエージェント文字列の大きさはどれくらいになりますか?
-
[解決済み] PragmaヘッダーとCache-Controlヘッダーの違い?
-
[解決済み] REST APIで "Not Ready Yet, Try Again Later "のHTTPステータスコードを選択するにはどうすればよいですか?[クローズド]。
-
[解決済み] URLのプロトコルを継承するために、先頭のダブルスラッシュを使用することに何か不都合はありますか? 例:src="//domain.com"