文件上传服务器端配置:
·file_uploads = On, 支持HTTP上传
·upload_tmp_dir = , 临时文件保存的目录
·upload_max_filesize=2M, 允许上传文件的最大值
·max_file_uploads=20, 允许一次上传的最大文件数
·post_max_size = 8M, POST方式发送数据的最大值
·max_execution_time = -1, 设置了脚本被解析器终止之前允许的最大执行时间,单位为秒,防止程序写得不好而占尽服务器资源。
·max_input_time = 60, 脚本解析输入数据允许的最大时间,单位是秒。
·max_input_nesting_level = 64, 设置输入变量的嵌套深度。
·max_input_vars = 1000, 接受多少输入的变量(限制分别应用于$_GET、$_POST和$_COOKIE超全局变量)指令的使用减轻了以哈希碰撞来进行拒绝服务攻击的可能性。如有超过指令指定数量的变量,将会导致E_WARNING的产生,更多的输入变量将会从请求中截断。
·memory_limit = 128M, 最大单线程的独立内存使用量。也就是一个web请求,给予线程最大的内存使用量的定义。
上传文件错误信息说明
·UPLOAD_ERR_OK:其值为0,没有错误发生,文件上传成功。
·UPLOAD_ERR_INI_SIZE:其值为1,上传的文件超过了php.ini中upload_max_filesize选项限制的值。
·UPLOAD_ERR_FORM_SIZE:其值为2,上传文件的大小超过了HTML表单中MAX_FILE_SIZE选项指定的值。
·UPLOAD_ERR_PARTIAL:其值为3,文件只有部分被上传。
·UPLOAD_ERR_NO_FILE:其值为4,没有文件被上传。
错误信息中没有错误信息为5的。
·UPLOAD_ERR_TMP_DIR:其值为6,找不到临时文件夹。
·UPLOAD_ERR_CANT_WRITE:其值为7,文件写入失败。
·UPLOAD_ERR_EXTENSION:其值为8,上传的文件被PHP扩展程序中断。
客户端文件上传限制:
·通过表单隐藏域限制上传文件的最大值
<input type="hidden" name="MAX_FILE_SIZE" value="字节数" />
·通过accept属性限制上传文件类型
<input type="file" name="myFile" accept="文件的MIME类型" />