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

声明:本站所有文章和图片,如无特殊说明,均为原创发布。商业转载请联系作者获得授权,非商业转载请注明出处。
随机推荐
JavaScript 基本语法
Web 自定义组件
CSS 图片缩小出现锯齿
JavaScript URL 对象
JavaScript audio 教程
使用 svg 作为背景图片
MySQL 的 sql_mode 模式介绍:为什么 MySQL 中 int,float,double 类型字段插入空字符时自动转为0
Wordpress 使用 tag 标签获取文章列表的方法