1

我正在处理文件上传脚本,但我完全无法上传任何内容。

尝试上传文件时,我收到以下错误代码:

Error 101 (net::ERR_CONNECTION_RESET): The connection was reset.

我尝试了多个浏览器,甚至从网上抓取了几个超级基本的上传脚本并测试它们是否可以工作,但我仍然收到相同的错误。

我检查了 php.ini 并且帖子大小、内存限制、输入时间限制和执行时间限制都设置为默认值。

我尝试上传多个不同的文件,从几百字节到几 MB,但我仍然收到相同的消息。

我想知道临时上传目录是否可能是某种权限问题?

我的 php.ini 文件上传部分如下:

;;;;;;;;;;;;;;;;
; File Uploads ;
;;;;;;;;;;;;;;;;

; Whether to allow HTTP file uploads.
; http://php.net/file-uploads
file_uploads = On

; Temporary directory for HTTP uploaded files (will use system default if not
; specified).
; http://php.net/upload-tmp-dir
;upload_tmp_dir =

; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 2M

; Maximum number of files that can be uploaded via a single request
max_file_uploads = 20

我之前已经将文件上传到此服务器,大约 2 周前没有问题,据我所知,从那时起没有任何配置更改。

我还尝试打开错误报告,将 ini 设置直接添加到上传脚本中,并在上传脚本顶部回显任何内容。我现在已经没有如何解决这个问题的想法了。

4

2 回答 2

1

通过在我们的网络服务器上重新启动 Apache 解决了问题。

sudo service apache2 restart

Apache 版本 2.2.22 (Ubuntu)

Ubuntu 版本 13.04

于 2013-09-27T09:13:53.363 回答
1

在这个问题上我也出过不少汗。答案就在 Apache 日志中:

[Sun May 08 09:31:02 2016] [warn] [client 127.0.0.1] mod_fcgid:HTTP 请求长度 137056(到目前为止)超过 MaxRequestLen (131072),引用者:http: //mysamplesite.com

因为我已将 PHP 配置为 Fast Cgid 模块。解决方案是在 httpd.conf 中修复请求长度的值:

<IfModule mod_fcgid.c>
    MaxRequestLen         10000000
</IfModule>

等等...

注意:根据您的 Apache 版本,您可能需要语法

<IfModule mod_fcgid.c>
    FcgidMaxRequestLen         10000000
</IfModule>
于 2016-05-08T01:59:32.083 回答