0

私はファイルをアップロードするためにfineuploaderを使用しています。200MB未満のファイルではすべて正常に動作します。すべてが失敗します。新しいファイルが作成されますが、空です(0kbを意味します)

すでに私のweb.configを変更して、最大500MBのアップロードを可能にしました。しかし、役に立たないようです。

web.config:

  <security>
      <requestFiltering>
          <requestLimits maxAllowedContentLength="524288000" />
      </requestFiltering>
  </security>

<httpRuntime targetFramework="4.5" maxRequestLength="512000" executionTimeout="900" requestLengthDiskThreshold="512000" />

コントローラ:

[HttpPost]
public ActionResult Upload(string qqfile)
{
    try
    {
        Stream stream = Request.Files.Count > 0 ? Request.Files[0].InputStream : Request.InputStream;

        string filePath = Path.Combine(@"C:\Temp\100", qqfile);
        using (Stream file = System.IO.File.OpenWrite(filePath))
        {
            stream.CopyTo(file);
        }
....

200MBを超えるファイルをアップロードできないのはなぜですか?

4

2 に答える 2

0

最初に頭に浮かぶのは、IISの制限です。IIS7の「統合モード」の前は、IISプロパティを設定するためにIIS-MetaBaseを処理する必要がありました。

Webサイトを「統合モード」で実行している場合、またはVS開発Webサーバー(カッシーニベース)を使用している場合は機能する可能性があります。「クラシックモード」で本番環境を実行している場合は、統合構成を使用せず、にフォールバックします。メタベース。メタベースを編集していない場合は、デフォルトのmetabase-upload-limitを超えるアップロードは失敗します。

あなたのコード/設定/質問から、あなたが問題を抱えているウェブサイトがどのモードで実行されているかを判断できません-あなたの質問に答えるために不可欠かもしれません-これらの詳細を提供してください。

于 2013-02-19T23:25:46.690 に答える
0

それを理解しました:それはweb.config設定でした:

web.config:

<httpRuntime targetFramework="4.5" maxRequestLength="2147483647" executionTimeout="90" requestLengthDiskThreshold="2147483647" />

 <system.webServer>
      <security>
          <requestFiltering>
              <requestLimits maxAllowedContentLength="4294967295" />
          </requestFiltering>
      </security>
  </system.webServer>

私を正しい方向に向けてくれてありがとうYasser

于 2013-02-20T07:25:20.453 に答える