Discuz! 解决“服务器限制无法上传大附件和高分辨率图片”问题
第一步进入后台管理中心在论坛首页右上角点击进入“管理中心”需要输入管理员密码。在左侧菜单栏依次选择用户-管理组-管理员或者选择您想修改权限的用户组。点击“基本设置”选项卡。找到并点击论坛相关-附件相关。第二步调整附件大小限制在“附件相关”设置页面找到“论坛最大附件尺寸”选项。// 将数值修改为 0表示无限制或一个较大的值例如 2000000000约2GB论坛最大附件尺寸:0或2000000000说明设置为0表示不限制单个附件大小受服务器PHP配置影响。设置为一个具体的大数值如 2000000000可以设定一个明确的上限。修改后点击“提交”保存设置。第三步修改php环境里面的php.ini文件修改文件的传输大小find/-namephp.ini#查找到自己的路径的php.ini文件vim/usr/local/php82/etc/php.iniupload_max_filesize1024M#限制其单个文件的传输大小post_max_size1024M#限制一次post请求的总大小包含所有上传文件memory_limit1024M#总内存的上限必须最大第四步保存配置并重启服务完成上述php.ini文件的修改后请按以下步骤操作保存并退出编辑器在vim编辑器中按Esc键确保退出编辑模式。输入:wq并按Enter键保存更改并退出。重启 PHP 服务为了使新的配置生效需要重启 PHP-FPM 服务或您所使用的 PHP 服务。根据您的服务器环境执行相应的重启命令例如编译安装1. 首先确保系统已安装psmisc工具包包含killall命令bash yum install psmisc -y # 或对于 Debian/Ubuntu 系统 # apt-get install psmisc -y2. 停止当前所有 PHP-FPM 进程bash killall php-fpm3. 验证进程是否已停止bash ps -aux | grep php-fpm4. 使用 PHP 安装路径下的sbin/php-fpm重新启动服务请根据您的实际安装路径调整例如/usr/local/php82/sbin/php-fpmbash /usr/local/php82/sbin/php-fpm通过 yum/apt 等包管理器安装**通常通过包管理器安装的 PHP-FPM 会注册为系统服务可以使用systemctl命令管理# 重启 PHP-FPM 服务systemctl restart php-fpm# 设置开机自启可选systemctlenablephp-fpm# 查看服务状态确认重启成功systemctl status php-fpm如果您的服务名称不同例如php82-fpm请相应调整命令。第五步调整 GD 图片像素点上限解决高分辨率图片上传问题如果遇到因图片分辨率过高导致上传失败的问题通常是由于 GD 库的像素点限制。请按以下步骤在 Discuz! 后台进行调整进入后台管理中心在论坛首页右上角点击“管理中心”需要输入管理员密码。导航至 GD 图片像素点上限设置在管理中心顶部菜单栏选择全局。在左侧菜单中依次选择上传设置-基本设置。在右侧设置页面中找到GD 图片像素点上限选项。修改后需要点提交。修改像素点上限值将默认值修改为一个更大的数值例如99999999999或根据您的实际需求设置。此设置允许 GD 库处理更高像素的图片。保存设置并重启服务点击页面底部的“提交”按钮保存更改。为了使修改生效需要重启 PHP-FPM 服务参考第四步中的重启方法。