可移植Web应用程序中的php上传设置

时间:2010-11-16 17:33:04

标签: php apache web-applications upload

我正在构建一个处理在线文件存储/访问的Web应用程序。在我的本地环境中,我使用了.htaccess来设置

php_value upload_max_filesize 100M
php_value post_max_size 101M

在各种服务器上测试应用程序后,我发现并非所有设置都允许您使用.htaccess方法修改ini设置。我想到的解决方案是在安装脚本期间检查该权限,并根据允许的内容使用.htaccess,用户目录php.ini或ini_set();进行该特定安装。

ini_set()显然不适用于post_max_upload。出于某种原因即使我的php.ini有 user_ini.filename =“。user.ini” 它不会读取该文件中的2个指令。它也不会在名为php.ini的应用程序目录中读取相同的信息 上面说的.htaccess指令导致500 Sever配置错误。 可以动态更改post_max_uploadupload_max_filesize

问题是我不知道如何检查特定服务器上的内容和不允许的内容。有人可以帮忙吗?

2 个答案:

答案 0 :(得分:0)

您的最长执行时间可能会缩短上传过程..

这是我在管理区域中使用的.htaccess - 也许您可以尝试这些设置。

请勿全局使用这些设置,只能将.htaccess设置为将您的上传或管理脚本与站点的其余部分隔离的.htaccess,否则您可能会遇到执行时间过长的问题。

php_value upload_max_filesize 30M
php_value post_max_size 30M
php_value max_execution_time 600
php_value max_input_time 200

如果您无法正常工作,或许您的主机已禁用.htaccess和ini设置更改......

答案 1 :(得分:0)

这里可能存在的一个问题是我试图将原始帖子中的2行添加到php.ini文件。也许这对某些人来说是基本的,但显然你不能这样做?您似乎需要将所有其余的php.ini设置重新声明为特定于目录的php.ini,然后只需更改适用的行。

这似乎是一种时髦的做事方式,所以也许我错了......有人能更有信心告诉我确实是这种情况,或者我错了吗?