我有一个表单,可以很好地处理(上传)许多文件(tgz、microsoft 可执行文件、macosx 可执行文件),并且大小不同(包括比给我错误的文件更大的文件)。
所以没有文件大小,...是问题所在。
但是当我尝试使用 apache (apache 2.2.16) 将文件(linux exe 32 位)上传到我的 debian (squeeze) 64 位时,我总是收到错误 #8,即 UPLOAD_ERR_EXTENSION 错误。
php (php 5.3.3) $_FILES 数组给我'size'==0,没有'tmp_name'和正确的'name'。
我的表格是这样的:
<form action=\"emUpload_file.php\" method=\"post\" enctype=\"multipart/form-data\">
有什么想法吗?
谢谢。
负载处理正常,因为当我上传任何其他类型的文件时它可以工作,我只对 Linux 可执行文件有麻烦。对我来说这很奇怪,但我认为这对我的 html/php 代码来说不是问题。
最佳答案
最后我发现了将可执行文件(linux)上传到我的 apache 服务器(linux)的问题。 开发是在与生产服务器不同的服务器中完成的,这台服务器有一个额外的安全模块,它是 Suhosin 。
现在我刚刚删除了/etc/php5/conf.d/suhosin.ini ,重新启动了服务器,错误 8 消失了。
谢谢。
关于php 上传文件错误#8(当它是 Linux 可执行文件时),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10423733/