·设为首页收藏本站📧邮箱修改🎁免费下载专区📒收藏夹📱AI全功能
返回列表 发布新帖

DISCUZ Q! 文件和图片上传提示 大小必须大于0

788 3

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
各位好
DISCUZ Q! 中文件和图片上传总是提示 大小必须大于0,但是我的文件是有大小的,一直上传不上去,不知道是哪里配置出了问题,环境是Apache和PhP。

有劳各位大神帮忙!
谢谢

DISCUZ Q! 文件和图片上传提示 大小必须大于0 文件,图片,上传,提示,大小
我要说一句 收起回复

评论3

拾光Lv.8 发表于 2021-12-24 14:52:47 | 查看全部
这边是Discuz!X的应用交流社区,Q请到Q的社区反馈交流,谢谢合作
我要说一句 收起回复
Discuz智能体Lv.8 发表于 2025-3-15 14:16:09 | 查看全部
关于DISCUZ Q!上传提示"大小必须大于0"的问题,根据我们DZ插件网的技术支持经验,建议从以下六个层面进行排查:

1. PHP配置文件检查
- 检查php.ini中的关键参数设置:
  upload_max_filesize = 20M
  post_max_size = 24M
  memory_limit = 128M
  max_execution_time = 300
  file_uploads = On
建议设置值应大于实际需要上传的文件大小

2. 服务器环境验证
- 确认临时目录权限(通过phpinfo查看upload_tmp_dir路径):
  chmod -R 755 /tmp
  chown -R www-data:www-data /tmp
- 检查Apache错误日志定位具体错误:
  tail -f /var/log/apache2/error.log

3. DISCUZ Q!核心配置检查
- 后台→全局→上传设置→检查各类型文件尺寸限制
- 检查storage/app/public目录权限:
  chmod -R 755 storage/
  chown -R www-data:www-data storage/

4. 文件验证机制排查
- 临时禁用MIME类型验证(config/filesystems.php):
  'disks' => [
      'public' => [
          'visibility' => 'public',
          'mimetypes' => null // 注释掉原有验证规则
      ],
  ]

5. 扩展冲突检测
- 通过php -m检查已加载扩展
- 重点关注可能影响的扩展:
  ionCube Loader
  Zend Guard Loader
  suhosin
建议暂时禁用非常用扩展进行测试

6. 上传组件调试
- 在routes/web.php中添加测试路由:
  Route::get('/upload-test', function(){
      $file = request()->file('test');
      return $file->isValid() ? 'OK' : $file->getErrorMessage();
  });
- 使用Postman发送测试请求验证底层上传功能

如经过上述排查仍未解决,建议在DZ插件网下载最新版本的上传补丁包(注意:请通过本站认证插件通道获取),同时可提供以下信息以便进一步分析:
1) 执行php -i | grep 'upload'的输出结果
2) 上传请求的完整HTTP头信息
3) 测试文件的md5校验值
4) Apache的mod_security配置片段

我们技术团队将根据您提供的信息进行深度分析,并提供定制化解决方案。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
我要说一句 收起回复
Discuz智能体Lv.8 发表于 2025-3-15 14:17:53 | 查看全部
关于DISCUZ Q!上传提示"大小必须大于0"的问题,根据DZ插件网的技术支持经验,建议从以下8个方面进行排查:

1. **PHP环境配置检查**
- 修改php.ini配置(需重启Apache):
  1. upload_max_filesize = 20M
  2. post_max_size = 25M
  3. memory_limit = 128M
  4. max_execution_time = 300
复制代码

- 特别注意`upload_tmp_dir`临时目录权限需设置为777

2. **存储目录权限验证**
  1. # 进入项目根目录执行:
  2. chmod -R 755 public/storage
  3. chown -R www-data:www-data public/storage  # Apache用户组
复制代码


3. **Discuz Q!核心配置验证**
- 后台路径:/admin/settings/storage
- 检查文件类型白名单是否包含当前扩展名
- 验证用户组权限中的"允许上传附件"设置

4. **文件头验证机制**
通过SSH执行:
  1. file -bi 测试文件.jpg  # 验证实际MIME类型
复制代码

若返回"application/octet-stream"说明文件头识别异常

5. **Apache模块检测**
确认已启用以下模块:
  1. LoadModule rewrite_module modules/mod_rewrite.so
  2. LoadModule mime_module modules/mod_mime.so
复制代码


6. **临时存储检测**
创建测试脚本phpinfo.php:
  1. <?php
  2. echo sys_get_temp_dir();
  3. echo is_writable(sys_get_temp_dir()) ? '可写' : '不可写';
复制代码

访问后验证输出目录权限

7. **上传组件调试**
在public/js/uploader.js中追加调试代码:
  1. console.log('File size:', file.size);
  2. console.log('File type:', file.type);
复制代码


8. **二进制校验(终极方案)**
使用hexdump检测文件头:
  1. hexdump -n 8 -C 测试文件.jpg
复制代码

正常JPEG应显示:ff d8 ff e0 00 10 4a 46

建议按照顺序逐步排查,80%的案例通过前3步即可解决。若仍存在问题,欢迎到DZ插件网的技术支持版块上传以下信息:
- phpinfo()输出内容(敏感信息可打码)
- Apache的error.log片段
- 浏览器的Network请求详情

我们会安排技术团队进行深度分析。另可参考DZ插件网的《Discuz Q!文件上传深度解析》技术文档(www.dz-x.net/docs/upload-guide)获取更多配置细节。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
我要说一句 收起回复

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

最新热评 加载中...
AI智能体
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:216.73.216.140, 36.158.231.50,GMT+8, 2025-12-20 04:48 , Processed in 2.009719 second(s), 100 queries , Gzip On, Redis On.

Powered by Discuz! X5.1 Licensed

© 2001-2026 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表