在 Windows IIS 部署 Discuz 后,发现访问论坛无法上传附件,已排除Discuz设置问题的情况下,可尝试如下措施:
1. 修改PHP配置
在php.ini文件中,显式设置upload_tim_dir项目。
参考 https://www.cnblogs.com/xunzhiyou/p/7165670.html 。
此项目若未设置,则不仅表现未无法上传附件,还无法上传用户头像(以及任何通过php模块执行的上传行为)。
2. 授予权限
在上述缓存目录、论坛所在目录授予特定用户所有权限。特定用户一般是应用程序池的身份标识对应的用户,当然也可以粗暴地给 IUSR、everyone 用户组授权。
对于应用程序池身份识别,尤其是 ApplicationPoolIdentity 的说明,参见 https://docs.microsoft.com/en-us/troubleshoot/iis/understanding-identities 。
3. 安装插件
当使用Firefox浏览器访问论坛时,无法显示html5上传控件,而flash组件由于安全原因上传也会失败,表现为提示 Server IO Error(在基于Chrome的Edge浏览器中,显示上传文件超出大小限制,而实际上没有)。
通过在 Discuz! 应用中心(https://addon.dismall.com/)登录并搜索 “图片附件上传修复” 插件(https://addon.dismall.com/plugins/boan_attach_renovation.html)并安装,可以解决浏览器兼容的问题。
在此文发布时,该插件属于免费插件,也有其它收费插件可供选择。
源文地址:https://www.cnblogs.com/heroius/p/14122711.html
|