在服务器上覆盖php.ini

时间:2012-01-10 23:35:38

标签: .htaccess php execution-time

我有一个允许用户上传图片的页面。

当用户尝试上传较大的图片时,它会返回500错误。

以下代码......

<?php echo ini_get("upload_max_filesize"); 
echo ini_get("post_max_size"); 
echo ini_get("max_input_time");
echo ini_get("max_execution_time");
?>

...返回:

100M
100M
60
3600

我猜这是导致问题的最大输入时间,因为我已经测试了100mb以下的文件,但上传的时间超过60秒。

我没有访问我的主机到php.ini文件,所以我可以覆盖这些设置吗?我已经尝试添加一个htaccess文件,但我不确定我是否把它放在正确的位置。

2 个答案:

答案 0 :(得分:17)

将.htaccess文件放在网站的根文件夹中(php脚本所在的位置)并添加以下值:

php_value upload_max_filesize 100M
php_value post_max_size 100M
php_value max_execution_time 200
php_value max_input_time 200

当然,您可以设置其他尺寸和时间限制。这应该有用。

答案 1 :(得分:1)

设置php ini指令取决于服务提供商配置的性质。运行phpinfo()脚本来查看您的配置。如果您的提供程序在用户UID上下文中使用suPHP启动PHP,那么它可能会在脚本的目录中查找php.ini。 This是我的托管服务提供商的工作原理。