Azure .mp4上传失败

时间:2017-11-07 15:49:03

标签: php laravel azure web-config mime-types

早上好,

我们已在Azure App Service上设置了Laravel项目。正致力于上传.mp4文件的能力。如果我们尝试上传.zip,.jpg,.doc等,它们都可以正常工作。 .mp4文件总是会出错。我们发现的大多数答案都说它是web.config,但我们认为它是正确的。下面是一些信息:

我们收到错误: 404 Not Found:您要查找的资源已被删除,名称已更改或暂时无法使用。

我的web.config文件位置是: D:\ home \ site \ wwwroot \ public \ web.config

我的上传目录是: D:\ home \ site \ wwwroot \ public \ test

我的web.config看起来像是:

<configuration>
  <system.webServer>
    <staticContent>
      <mimeMap fileExtension=".mp4" mimeType="application/octet-stream" />
      <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="7.00:00:00" />
    </staticContent>
    <handlers accessPolicy="Read, Script">
      <add name="PHP71_via_FastCGI" path="*.php" verb="GET, HEAD, POST, PUT, DELETE, PATCH, OPTIONS" modules="FastCgiModule" scriptProcessor="D:\Program Files (x86)\PHP\v7.1\php-cgi.exe"
        resourceType="Either" requireAccess="Script" />
      <remove name="ExtensionlessUrl-Integrated-4.0" />
      <add name="ExtensionlessUrl-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,DELETE,PUT,PATCH,OPTION" type="System.Web.Handlers.TransferRequestHandler"
        preCondition="integratedMode,runtimeVersionv4.0" />
    </handlers>
    <rewrite>
      <rules>
        <rule name="Imported Rule 1" stopProcessing="true">
          <match url="^(.*)/$" ignoreCase="false" />
          <conditions>
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
          </conditions>
          <action type="Redirect" redirectType="Permanent" url="/{R:1}" />
        </rule>
        <rule name="Imported Rule 2" stopProcessing="true">
          <match url="^" ignoreCase="false" />
          <conditions>
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
            <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
          </conditions>
          <action type="Rewrite" url="index.php" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

如你所见,我们在那里有mimeMap。我们尝试过application / octet-stream和video / mp4。任何人有任何想法/想法?我们尝试将web.config放在其他文件夹中也存在同样的问题。

我尝试的另一件事是进入Kodu并通过那里手动上传文件。它工作但是如果你尝试访问.mp4它会显示与我尝试通过网站上传时相同的错误。

1 个答案:

答案 0 :(得分:1)

.mp4文件大小是否大于8MB?如果是这样,您需要增加文件上传大小限制。

使用以下内容创建名为.user.ini的文件,并将其放入根目录。

; Maximum allowed size for uploaded files.
upload_max_filesize = 2048M

; Must be greater than or equal to upload_max_filesize
post_max_size = 2048M

如果文件大小超过30MB,您还需要将其添加到web.config文件中。

<system.webServer>
  <security>
    <requestFiltering>
      <requestLimits maxAllowedContentLength="2147483648" />
      <!--Byte in size, increase it to 2GB-->
    </requestFiltering>
  </security>
</system.webServer>