我有一个忍者形式的Wordpress网站使用文件上传插件。表格在我的Godaddy登台服务器上运行得很好。我将网站迁移到另一个Godaddy帐户,表单停止工作。由于托管帐户和所有其他配置几乎完全相同,我很难理解问题可能是什么。
然后我检查了PHP错误日志并看到以下内容:
PHP Warning: mkdir(): No such file or directory in /new/server/wp-content/plugins/ninja-forms-uploads/.../pre-process.php on line 203
PHP Warning: move_uploaded_file(/OLD/server/wp-content/uploads/ninja-forms/tmp/xEgbu/ninja_forms_field_3332): failed to open stream: No such file or directory in /new/server/wp-content/plugins/ninja-forms-uploads/.../pre-process.php on line 209
PHP Warning: move_uploaded_file(): Unable to move '/tmp/phpqrLDo5' to '/OLD/server/wp-content/uploads/ninja-forms/tmp/xEgbu/ninja_forms_field_3332' in /new/server/wp-content/plugins/ninja-forms-uploads/.../pre-process.php on line 209
PHP Warning: mkdir(): Permission denied in /new/server/wp-content/plugins/ninja-forms-uploads/.../processing/process.php on line 154
(仅供参考:省略号只是文件路径中不重要部分的简写。)
需要注意的是第二个和第三个PHP警告上的new/server/
和OLD/server/
冲突。出于某种原因,Ninja Form脚本试图将文件从旧服务器上的某个位置移动到新服务器上的某个位置。
Ninja Forms在初始安装时是否可能将服务器的完整路径保存为数据库中的参考点?如果是这样,可以在不重新安装Ninja Forms的情况下找到并调整它吗?
谢谢! 标记
答案 0 :(得分:1)
我也遭受了这种痛苦。
截至https://ninjaforms.com/docs/file-uploads/
如果从另一台服务器迁移,并且“文件上载”路径为 指向较旧的服务器位置,则可以停用 重新激活您的文件上传和Ninja Forms插件以重置文件 路径。
答案 1 :(得分:0)
有同样的问题。尽管建议的步骤(通过fiorebat停用和重新激活“文件上载”和“ Ninja Forms”插件)可能起了一定作用,但对我来说并没有解决问题。
这个问题真的很愚蠢.. UTF / Charset编码问题。要解决此问题,请在“文件上传”插件的“上传设置”部分中实际输入Class
和/或任何特殊字符。
我怀疑当两个WP具有不同的字符集时会发生这种情况。
背景:我们在文件上传中使用了自定义路径/目标,路径中有%
。当我们硬编码说%year%/%Mmonth%
的路径时,它可以正常工作。因此,接下来,我们手动输入2019/7
(或从同一页面上显示的样本中复制),自定义/动态路径也可以正常工作。