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

声明:本站所有文章和图片,如无特殊说明,均为原创发布。商业转载请联系作者获得授权,非商业转载请注明出处。
真诚赞赏,手留余香
赞赏
搜神记
766 文章
4 教程
8 项目
随机推荐
JavaScript 的历史
JavaScript 函数
WordPress 自定义模板路径
WordPress 主题激活和取消激活钩子
JavaScript 对象
CSS 滚动条样式修改
Debian11 安装笔记4:安装常用软件
Nginx 使用 Njs 授权访问文件