开发者

Upload max size in PHP?

Is it possible for the开发者_StackOverflow社区 upload of ~100 MB files using PHP?

If so, what changes need to occur in the configuration file (php.ini)?

Sri


The following options are relevant:

  • PHP: upload_max_filesize (in php.ini or .htaccess only, won't work using ini_set())
  • PHP: post_max_size (ditto)
  • PHP: max_input_time (ditto, thanks @Thorstein, forgot this one)

and possibly

  • Apache: LimitRequestBody


In your php.ini adjust the value of:

file_uploads = On
upload_max_filesize = 100M //needs to be in {x}M format

And allow larger post size:

post_max_size = 100M


To allow for larger uploads with PHP you must change a few settings in the php.ini file (upload_max_filesize, max_input_time, memory_limit, max_execution_time, post_max_size). You can find your php.ini file under you PHP installation directory, and more information about the required settings here.


This dumfounded me for a while so just wanted to add:

If your project also use nginx (e.g. a buildpack), you may have to add client_max_body_size 100M; to your nginx.conf file since nginx defaults to only 1M (1 MB) - in addition to the PHP settings mentioned above.

Regarding PHP settings, I create a .user.ini file at root level of my projects to change the few settings I want to override from the default php.ini file.

In my setup (using dokku) it was located at /etc/nginx/nginx.conf, then added the extra line via nano nginx.conf. I don't directly use nginx, but my buildpack adds it.

Hope this helps someone :)


You just need to change the timeout of the server and the max file size in the php.ini file.

http://blog.jc21.com/2007-05-03/change-the-maximum-upload-size-with-php/

EDIT: You may not need to change the timeout of the server as that really would depend on which server you are running things on.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜