服务器上的文件上传 404 错误
Posted
技术标签:
【中文标题】服务器上的文件上传 404 错误【英文标题】:File upload 404 error on server 【发布时间】:2016-07-10 15:14:51 【问题描述】:我有一个 php 文件上传器,我们每天使用它来上传大约 10-15 个 5mb 的图像。我在本地有图像上传器,我可以很好地上传图像。我更改了 php.ini 中的所有设置,以确保我有正确的限制。
现在,我已将上传程序放在 Windows 服务器上,它具有相同的设置,但有时(并非总是)当我上传 10-15 张图像时,它会达到 97% 并引发 404 未找到文档错误。
有没有人知道为什么会发生这种情况?这几天我一直在尝试解决这个问题,这真的很令人沮丧。我在 iis 上使用 php 5.6。
【问题讨论】:
您在进行这些php.ini
更改后是否重新启动了 IIS?听起来仍然达到了上传限制(假设 Windows Server 使用的是 IIS)。
这很奇怪,当我过去达到上传限制时,我收到一条错误消息,指出找不到 404。
这就是 IIS 的运行方式,如果达到限制,它将返回 404:(HTTP Error 404.13 - CONTENT_LENGTH_TOO_LARGE)
。您需要增加requestLimits.maxAllowedContentLength
(错误日志是否证实了这一点?)。
【参考方案1】:
当 POST 长度过大时,IIS 返回 404 错误:
HTTP 错误 404.13 - CONTENT_LENGTH_TOO_LARGE
您需要使用参数增加文件上传限制:
requestLimits.maxAllowedContentLength
这两个项目的详细信息都在 IIS 网站上: https://www.iis.net/configreference/system.webserver/security/requestfiltering/requestlimits
【讨论】:
谢谢,我进入 IIS 并单击网站,然后单击右侧的请求过滤 > 编辑功能设置,然后更改最大内容长度。这行得通。 帮我修好了,我在任何地方都找不到这个【参考方案2】:对我来说,它既不是 PHP 也不是 php.ini 中最大文件大小设置的任何设置。
另一方面,IIS 限制了上传后的大小。
要更改,请在 IIS 管理器中访问您的网站 点击请求过滤 在右侧窗格中选择编辑功能设置 将最大允许内容长度更改为您想要的字节长度,即最大值(我们使用 100MB 或 104857600 字节)【讨论】:
以上是关于服务器上的文件上传 404 错误的主要内容,如果未能解决你的问题,请参考以下文章
使用 CSOM 404 未找到错误通过 Windows 服务将文件上传到 SharePoint 2010
尝试将生成的 pdf 文件上传到 Azure Blob 存储时出现 404 错误
Django 项目设置 Debug=False 后静态文件和上传文件404错误问题解决