【问题标题】:Unable to create directory wp-content in WordPress in a windows server 2016无法在 Windows Server 2016 中的 WordPress 中创建目录 wp-content
【发布时间】:2020-04-23 00:10:06
【问题描述】:

我无法使用 Wordpress 管理面板中的媒体工具将图像上传到我的 Wordpress 网站。我收到以下错误。

“logo512x512.png”上传失败。 无法创建目录 wp-content/uploads/2020/01。其父目录是否可被服务器写入?

我已经为这个问题提供了大量的解决方案,但没有一个对我有用。我在 windows 2016 服务器机器上。使用 MySQL 数据库。我没有 PhP 管理员没有 Cpanel。

我的 ftp 正在工作。我能够毫无问题地获得主题和插件。有什么想法吗?

【问题讨论】:

  • 您尝试过哪些解决方案?这可能有助于我们及时提供额​​外的解决方案。例如:如果您无法创建 wp-content 目录,您是如何让主题和插件文件夹工作的,因为它们位于 wp-content/themeswp-content/plugins
  • 我投票结束这个问题作为离题,因为这是特定于 WordPress,并且可能更适合 wordpress.stackexchange.com。
  • 您是如何确定这个问题与 MySQL 相关的?

标签: php mysql wordpress windows


【解决方案1】:

一个可能的问题是文件夹wp-contentchmod 设置。您可能需要将 chmod 更改为 wp-content 或其父目录,以允许在该目录中创建任何文件夹/文件和子文件夹/文件。

根据您用于设置 chmod 的 Windows 应用程序,将确定如何执行此过程。我使用 FileZilla,您可以简单地 -

右击wp-content,选择File Attributes,设置Numeric value: 755

另外,您是否考虑过使用 XAMPP 等第三方网络服务器?

【讨论】:

  • 感谢您的贡献。但是没有.. 我没有使用也不允许安装 filemozzila。我只能使用 Windows 服务器管理工​​具。
  • 也许你可以在 superuser.com 上问一下?我相信他们是这个社区的一个分支,并且有与微软相关的查询。祝你好运!
【解决方案2】:

我在 Ubuntu 和 Apache 上没有 cPanel、没有 phpMyAdmin 和 FTP 的 Google Cloud Engine 实例也有类似的问题。我这样解决了:

1.在 wp-config.php 上定义上传文件夹

用 nano 或 vim 打开 wp-config.php 并添加以下代码

define( 'UPLOADS', 'wp-content/uploads' );

在这一行之前:

require_once(ABSPATH . 'wp-settings.php');

并保存。

2。更改所有者

切换到 wp-content 目录。就我而言(使用您自己的路径):

cd /var/www/html/wp-content

接下来,将所有者更改为 www-data

chown -R www-data:www-data plugins

为什么是 www-data?就我而言,是在我的服务器上运行的 apache 服务帐户的名称。您可以通过以下方式检查名称:

ps aux | egrep '(apache|httpd)'

该命令返回如下内容:

www-data  5441  0.0  5.8 566184 34896 ?        S    06:34   0:00 /usr/sbin/apache2 -k start
www-data  7753  0.0  5.9 566248 35512 ?        S    09:00   0:00 /usr/sbin/apache2 -k start
www-data  9840  0.0  5.7 566160 34320 ?        S    11:21   0:00 /usr/sbin/apache2 -k start
www-data 21068  0.0  6.2 564032 37192 ?        S    18:22   0:00 /usr/sbin/apache2 -k start
www-data 21069  0.0  6.0 563692 35636 ?        S    18:22   0:00 /usr/sbin/apache2 -k start
root     21455  0.0  0.1  13208  1036 pts/1    S+   18:44   0:00 grep -E --color=auto (apache|httpd)
root     31982  0.0  1.1 485904  6872 ?        Ss   Jan03   0:18 /usr/sbin/apache2 -k start

如您所见,root 和 www-data。也许使用 windows server 的帐户会有所不同(任务列表?pslist?),我不知道如何获取它(我从未使用过 windows server,抱歉)。我希望 www-data 对你有用。

最后,确保上传文件夹具有正确的权限

chmod 755 -R uploads

3.授予该用户使用 Wordpress 的权限

到 html 或 public_html 文件夹(在我的情况下是 /var/www/html,将其更改为您自己的路径)

chown -R www-data /var/www/html

然后瞧。我希望这个小指南对您有用,或者至少能给您提供解决问题的想法!

【讨论】:

  • 你的命令不是很熟悉。我的环境是 Windows 服务器。
  • 问题不是针对 Windows Server 吗?这怎么可能是最好的答案?
  • 我知道你要的是 windows 服务器。但是,我跳读了这些步骤,让您获得在 WS 中解决它的方法或想法。 Idk,类似于“啊,好吧,您更改了 wp-content 的所有者”并使用 bash 命令执行此操作。如果您希望食谱可以复制和粘贴,我很抱歉。
【解决方案3】:

朋友们说过要在目录上设置权限... 但在 Windows 上,Linux 之间存在差异,我建议将 WP-content(仅此文件夹)作为 chmod 0777 放在当前上传文件夹(2020)中作为 chmod 0777。 那应该这样做。即使您看到有人建议始终将 0755 放在这些文件夹中,我还是建议您将其专门放在这些文件夹中。

在进行任何更改之前进行备份,我相信它会帮助您管理上传

一个不错的选择是每个月 WordPress 都会为该月创建一个新文件夹,然后根据结束的月份将文件夹权限更改为 0755,这样可以帮助你对安全问题更有信心

【讨论】:

    猜你喜欢
    • 2013-05-07
    • 2014-03-14
    • 1970-01-01
    • 2014-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-04
    • 2015-06-23
    相关资源
    最近更新 更多