2

32MB のファイルを Azure BLOB にアップロードしようとしています。そのために、PHP ベースのスクリプトである uploadify を使用します。

私は 21.9MB の別のファイルを持っています。それは正常に動作しますが、より大きなファイルは IO エラーを与え続けます。user.ini の制限を次のように設定しました。

upload_max_filesize = 60M
post_max_size = 60M
memory_limit = 60M
max_input_time = 1200
max_execution_time = 1200

制限を設定するのを忘れていませんか、それとも他のことを確認する必要がありますか?

4

2 に答える 2

2

あなたの問題に関して理解すべきことがいくつかあります。REST API ベース (任意のプログラミング言語、PHP、C#、Java、Python、NodeJs など) のソリューションを使用して、BLOB を Azure Storage との間で直接アップロード/ダウンロードする場合、このような小さな制限に達することはありません。この場合、BLOB サイズの制限は Azure Blob Storage によって設定され、現在の制限は BLOB ごとに 1 TB です。

ただし、Web サーバーを使用してファイルをアップロード/ダウンロードし、アップロードされたファイルを Azure Blob Storage に保存するためのコードが Web サーバー内にある場合、Web サーバーによって提供される制限に達します。問題は Web サーバーの設定に関連していました。

ここで明確にしたいのは、上記で実行したことは、IIS Web サーバーで実行されている Uplodify スクリプトに関連するアップロードの問題を解決するために IIS Web サーバーの設定を変更したことです。Web サーバーでのファイルのアップロードは HTTP を介して行われます。IIS の設定を変更して、HTTP チャネル経由でより大きなファイルを受け入れるようにし、Web サーバーの構成を変更すると、ここで役立ちました。

于 2013-03-15T23:47:31.970 に答える
1

私は問題を修正しました、私がしたことは次のとおりでした:

web.configファイルを作成します。

<?xml version="1.0"?>

<configuration>
    <system.web>
        <!-- other settings -->
        <httpRuntime maxRequestLength="104857600" /> <!--100 MB-->
        </system.web>
        <system.webServer>
          <security>
            <requestFiltering>
              <requestLimits maxAllowedContentLength="104857600" /> <!--100 MB-->
            </requestFiltering>
          </security>
        </system.webServer>
</configuration>

この後、http 500エラーのみが発生しました。これを解決するために、.htaccessファイルに次の行を追加しました。

LimitRequestBody 200MB
于 2013-03-18T09:52:24.870 に答える