1. ホーム
  2. ギット

のエラーが発生しました。RPC に失敗しました。HTTP 413 curl 22 要求した URL がエラーを返しました。413 リクエストエンティティが大きすぎます

2022-03-01 06:04:14

git が初めてリモートリポジトリにコードをコミットするとき、次のようなエラーメッセージとともに 413 エラーが表示されます。

git push --set-upstream origin master
Enumerating objects: 153, done.
Counting objects: 100% (153/153), done.
Delta compression using up to 4 threads
Compressing objects: 100% (133/133), done.
error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 Request Entity Too Large
fatal: the remote end hung up unexpectedly
Writing objects: 100% (153/153), 30.44 MiB | 8.93 MiB/s, done.
Total 153 (delta 9), reused 0 (delta 0)
fatal: the remote end hung up unexpectedly
Everything up-to-date


つま先立ち 

Baiduの多くの記事で紹介されている解決策は、リモートリポジトリに接続するためにsshプロトコルに変更することです。それは解決策でもなければ、エレガントでもなく、技術者として妥協するための言い訳でもない。

エラーの理由

<ブロッククオート

httpの413エラーコードは、リクエストボディが大きすぎるということなので、当然ながらサーバーの設定の問題です

サーバー側でnginxのリバースプロキシを使っているので、まずnginxの設定を変更しに行ったところ

httpのserverノードに client_max_body_size として構成されています。

解決までのステップ

nginxの設定ファイルnginx.confの場所を確認します。

find / -name nginx.conf

または、nginx コマンドを使用して、どの設定ファイルが使用されているかを確認します。

nginx -t

<イグ

設定を変更する 

http {
  server {
    client_max_body_size 100m
    # other configurations
  }
  # other configurations
}


設定を再読み込みして動作させる

nginx -s reload