Apache 虚拟主机配置文件中限制 PHP 上传文件大小

一,在虚拟主机中设置 PHP 配置


<VirtualHost *:443>
    ServerAdmin mail@test.com
    DocumentRoot "/var/com_test"
    ServerName www.test.com
    ServerAlias test.com


    php_value upload_max_filesize 100M
    php_value post_max_size 100M
    php_value memory_limit 128M
    php_value max_execution_time 600
    php_value max_input_time 600
</VirtualHost>



二,PHP文件上传设置

upload_tmp_dir ;文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹

upload_max_filesize = 100m ;望文生意,即允许上传文件大小的最大值。默认为2M

post_max_size = 100M ;指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M

一般地,设置好上述四个参数后,上传<=8M的文件是不成问题,在网络正常的情况下。


但如果要上传>8M的大体积文件,只设置上述四项还一定能行的通。除非你的网络真有100M/S的上传高速,否则你还得关心关心下面的参数:

max_execution_time = 30 ;每个PHP页面运行的最大时间值(秒),默认30秒

max_input_time = 30 ;每个PHP页面接收数据所需的最大时间,默认60秒

memory_limit = 8M ;每个PHP页面所吃掉的最大内存,默认8M



三,在.htaccess 文件中修改如下配置

<IfModule mod_rewrite.c>
  Options +FollowSymlinks -Multiviews
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

  php_value upload_max_filesize 100M
  php_value post_max_size 120M
  php_value memory_limit 256M
  php_value max_execution_time 600
  php_value max_input_time 600
</IfModule>



参考:

https://blog.csdn.net/cmzhuang/article/details/53537591

声明:本站所有文章和图片,如无特殊说明,均为原创发布。商业转载请联系作者获得授权,非商业转载请注明出处。
真诚赞赏,手留余香
赞赏
随机推荐
Land 主题
Linux 网络流量监控 iftop
Node.js 使用 Jest 和 supertest 做接口测试
Wordpress 使用 tag 标签获取文章列表的方法
WordPress 评论表单函数 comment_form()
WordPress 上传附件
ReferenceError: __dirname is not defined in ES module scope
JavaScript 检查 Date 是否为 Invalid Date