WordPress错误:上传文件夹不可写。导出和文件上传功能将无法正常使用。

6

我刚刚将我的WordPress数据迁移到了新服务器。然后我无法上传任何媒体文件。

在仪表板上显示错误:“上传文件夹不可写。导出和文件上传功能将无法正常工作。”

我的仪表板错误,我也更改了上传文件夹的权限。


我愿意打赌你刚迁移的服务器上启用了安全模式。 - Ohgodwhy
5个回答

14

我刚刚把网站迁移到了新服务器后出现了这个问题。

新服务器的文件系统路径与旧服务器不同,因此您的上传路径似乎无法写入,因为它在新服务器上不存在

问题在于,WordPress 有时会在wp_options表中填充一个名为upload_path的选项。就像PHP定义中的注释:'UPLOADS'可能被设置在您的wp-config.php中一样,这并不理想,因为它硬编码了您的路径。

所以解决方法非常简单,您需要清除(即删除)wp_options表中的键或仅该键的值。

如何做到这一点?WordPress本身有一个巧妙的方法来完成这个任务: (注意:在以下步骤中,请务必小心,除了您要查找的字段之外,不要修改任何其他字段)。

  1. 登录WP管理界面
  2. 转到网站上的以下URL:/wp-admin/options.php。这将向您呈现wp_options数据库表中所有WP选项的完整列表。
  3. 查找(Ctrl + F)以下选项名称:upload_path
  4. 如果它有一个值,只需删除该字段中的内容。
  5. 不要更改任何其他内容,并在底部单击保存更改
WordPress将开始使用默认路径(/wp-content/uploads/)到您的上传文件夹。

6
你需要更新上传目录的权限。
如果你拥有ssh访问权限,可以运行以下命令: chmod a+w wp-content/uploads 如果你使用FTP客户端,请右键点击文件夹并设置组或所有者写入权限。
如果你不知道上传文件夹在哪里,可以检查wp-config.php文件中的这一行:define( 'UPLOADS', YOUR UPLOAD FOLDER HERE);

我已经多次更新,每次更新的数量都不同。你能告诉我确切的数量和文件夹吗?我试图更改UPLOADS、2014/09和index.php文件夹。 - Paras
你可能有默认的wp-content/uploads/,但是你可以通过在wp-config.php中查找像define( 'UPLOADS', YOUR UPLOAD FOLDER HERE);这样的内容来进行验证。 - Scott Jungwirth

2

取决于您的环境。找出运行WordPress的用户并运行以下命令:

chown -R user:group /root/of/install/wp-content/uploads
chmod -R 755 /root/of/install/wp-content/uploads

将'user'替换为wp运行的用户,并对'group'执行相同操作。同时,确保您使用的FTP应用程序与上述'user'相同的用户一起运行。

如果您不关心安全性,可以直接运行

chmod -R 777 /root/of/install/wp-content/uploads

HTH


0
我通过以下步骤解决了这个问题:
  1. 通过cpanel打开myphpadmin并打开你的数据库。

  2. 选择选项表格

  3. 找到名为upload_url的行并点击编辑

  4. 删除该值并保存


0

上传文件夹不可写。必须在数据库中删除上传路径 > wp_options表。


1
你可能希望更详细地解释建议Paras如何解决问题。 - Tim Ogilvy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接