トラブルシュート

大きいZIPのアップロードが途中で止まるときの原因と直し方

大きなZIPファイルをアップロードしようとすると、プログレスバーが途中で止まって進まなくなることがあります。ネットワーク回線の速度だけが原因とは限らず、ブラウザのタイムアウト設定やファイルサイズ超過が実際の止まりを引き起こしていることもあります。この記事では止まる原因を順番に確認して解決するための手順を解説します。

よくある原因

プログレスバーが50%前後で止まって変化しない場合、ブラウザのHTTPリクエストタイムアウトが先に切れている可能性があります。特に企業ネットワーク内ではプロキシが設定されており、大容量リクエストを途中でリセットするケースがあります。まずWi-Fiを切ってスマートフォンのモバイル回線でアップロードが進むかを試すと、ネットワーク起因かどうかが即座に分かります。

もう一つの原因はファイルサイズの上限超過です。ギガサイト便の無料プランや上位プランにはアップロードサイズの上限があります。アップロード自体は始まるもののサーバー側で拒否された場合、途中で止まったように見えることがあります。管理画面に表示されるエラーメッセージを確認し、容量上限に達していないかをチェックしてください。

  • 相手がログインなしで開ける状態か確認する
  • PCとスマホで最低1回ずつ表示を確認する
  • 内部情報・個人情報・不要な外部送信が残っていないか見る
  • レビュー期限と修正時の差し替え方を決めておく

自分側で確認すること

まずZIPのファイルサイズを確認します。ZIPが100MBを超えている場合は、不要なファイル(node_modules、.gitフォルダ、未使用の大きな画像など)が含まれていないかを確認して除外します。次に、ZIPを解凍して中身を確認し、大容量のファイルが存在する場合は圧縮率を上げるか別の形式を試します。

Chrome DevToolsのNetworkタブを開いた状態でアップロードを開始し、途中で止まったときのステータスコードを確認します。413 Request Entity Too Largeならサイズ上限、408 Request Timeoutならタイムアウト、0(接続リセット)ならネットワーク経路の問題です。エラーの種類を特定してから対処することで、試行錯誤の回数を減らせます。

  • HTML内の外部script・form action・iframeを確認する
  • APIキーやトークンらしき文字列がないか検索する
  • 画像・CSS・JSのパスが公開後も解決できるか見る
  • noindexと認証を混同せず、必要なら両方設定する

相手側で確認すること

送り手がアップロードで詰まっている場合、ギガサイト便の推奨ブラウザと最新版かどうかを確認します。古いブラウザやSafariの特定バージョンでは大容量ファイルの分割アップロードに対応していないことがあります。Chromeの最新版でアップロードを試してもらうと改善する場合があります。

送り手のネットワーク環境(自宅Wi-Fi・オフィス有線・モバイル回線)を変えて試してもらいます。オフィスのプロキシを通らないモバイル回線でアップロードが成功するなら、ネットワーク管理者への相談が必要です。

  • HTML内の外部script・form action・iframeを確認する
  • APIキーやトークンらしき文字列がないか検索する
  • 画像・CSS・JSのパスが公開後も解決できるか見る
  • noindexと認証を混同せず、必要なら両方設定する

再発防止の運用

大きなZIPを繰り返しアップロードするワークフローでは、事前にファイルサイズチェックをスクリプト化しておきます。bashでZIPサイズを確認して50MB以下でないとアップロードしない、というルールをREADMEに明記するだけで担当者の判断基準が揃います。

画像ファイルが原因でZIPサイズが大きくなっている場合は、SquooshやImageOptimで圧縮してから再ZIPする手順を標準化します。WebP形式に変換するだけでJPEGの30〜50%のサイズになることが多く、合計10MBを超えている画像資産がある場合は変換を検討してください。

  • HTML内の外部script・form action・iframeを確認する
  • APIキーやトークンらしき文字列がないか検索する
  • 画像・CSS・JSのパスが公開後も解決できるか見る
  • noindexと認証を混同せず、必要なら両方設定する

よくある質問

アップロードが途中で止まった場合、再試行すれば続きから再開できますか?

ギガサイト便は基本的に最初からの再アップロードになります。レジューム機能は対応していないため、アップロードが止まったら最初からやり直す必要があります。ZIPのサイズを小さくしてから再試行してください。

ZIPを分割して複数回アップロードすることはできますか?

ギガサイト便は1つのZIPを1サイトとして展開する仕組みのため、分割アップロードには対応していません。ZIPのサイズを圧縮・最適化するか、不要ファイルを除いて1ファイルに収める必要があります。

node_modulesフォルダをZIPから除外するにはどうすればよいですか?

zipコマンドを使う場合はxオプションでnode_modulesを除外します。GUIツールではZIPを作成する前にnode_modulesフォルダをプロジェクトの外に移動しておくか、gitignoreのルールに従ってエクスポートするツールを使ってください。

関連記事

「トラブルシュート」の記事をもっと見る →