post_max_size和upload_max_filesize逐个案例

时间:2009-08-26 04:51:21

标签: php uploader

使用PHP上传器并想知道是否有办法在特定脚本中覆盖php_ini中的post_max_size和upload_max_filesize的默认值?

不想在php.ini中普遍地更改它,因为虽然可以在我们的管理部分中对上传者设置限制,但我们不希望公共部分有这么大的限制。

3 个答案:

答案 0 :(得分:1)

您应该可以通过.htaccess文件执行此操作。假设您要为管理区域上传10Mb,为公共区域上传2次。我将默认值(在php.ini中)设置为2 Mb,然后在管理区域中添加到htaccess文件:

php_flag upload_max_filesize 10M

修改
这是为了在目录级别上工作 - 我假设你的管理页面都是从mydomain.com/admin/运行的,你的webroot中有一个物理/管理文件夹(放置.htaccess文件的地方)

答案 1 :(得分:0)

除非您为每次访问写入.htaccess文件,否则无法更改每个用户的此值。

为什么不简单地允许上传并在太大的情况下丢弃它?

我确实找到了this,但我不相信它,因为HTML不知道你在做什么输入。

编辑:基本上,由于Apache处理文件的实际物理传输,因此您需要Apache在用户提交表单之前了解任何限制。由于HTML与此无关,因此您无法在此处进行设置,因为PHP仅在文件实际位于服务器上时才有用,您需要在上传文件后进行检查。对不起,我意识到我的第一个答案有点模糊。希望这会有所帮助。

答案 2 :(得分:0)

尝试使用php ini_set函数

您应该能够以这种方式覆盖php.ini文件中的默认值。只需确保在任何页面输出之前调用它。