0

我有一个共享服务器,并且已经能够上传大约文件。大小为 50 兆,没有问题,并且在我的 php.ini 文件中设置了限制,允许上传高达 100 兆。

我进行了潜水并获得了一个私人服务器帐户,并更改了我的 php.ini 文件以匹配我共享框中的那个...现在由于某种原因我无法上传大约 50 兆的文件。

我在 php.ini 中出于测试目的更改的项目包括:

memory_limit: 200M
max_execution_time: 1000
max_input_time: 1000
upload_max_filesize: 100M
post_max_size: 200M
--*These are just set like this for testing purposes until I get it working...*

此外,我在上传后执行的脚本目录和包含以下内容的目标文件夹中都设置了一个 .htaccess 文件:

"LimitRequestBody 102400000"

然而它仍然无法正常工作。我想我只是很困惑为什么这会在共享盒子上工作,而不是在我的新 VPS 上工作。有没有我在某处缺少的设置?

我之前测试过一个 40 兆的文件,它可以工作,但 43 兆没有...

更具体地说,我在处理文件的 php 脚本中运行它时遇到错误:

!is_uploaded_file($_FILES['photoupload']['tmp_name']){
echo "error";
}

这让我相信它与 http post 有关,但是,我不能对此持肯定态度,正如我所说,相同的脚本在共享服务器上完美运行。

它可能与apache用户的权限有关吗?在这一点上我很困惑。

任何帮助表示赞赏!

4

2 回答 2

1

您是否检查过以确保您有一个临时目录设置并正确配置?

如果将 40 MB 上传到这个新服务器,我会怀疑你在那里很好。

我会通过两台服务器之间的 phpinfo() 调用来比较您的 PHP 设置,以找出您缺少的内容。如果您通过 PHP 发布它,Apache 将与它没有任何关系。

于 2012-09-18T23:43:26.253 回答
0

如果您的服务器位于数据中心,则数据中心可能会将您的传输速度降低到上传 50 兆文件需要超过 15 分钟的时间。如果您的 apache 配置和服务器的设置方式完全相同,则表明存在网络问题。尝试增加 max_input_time: 1000

于 2012-09-19T00:50:06.907 回答