WordPress FTP升级无法复制文件;尝试在上传之前进行CHMOD

时间:2018-07-18 23:32:37

标签: wordpress

我正在将现有的WordPress网站迁移到新硬件,到目前为止,该网站已启动并且(大部分)正在运行。

尝试插件升级后,我发现WordPress打开的用于推送插件和其他升级的FTP会话似乎在尝试更改文件之前忽略了UPLOAD命令。如果为不存在的文件点击CHMOD,升级将失败。

先前的系统是在Ubuntu 12.04下运行的PHP 5.3。新系统是在Ubuntu 18.04下运行的PHP 7.2。

这似乎不是权限问题。我使用外部客户端将文件上传到相关目录没有问题,并且我怀疑WordPress如果尝试进行上传,便能够成功上传。当我临时向WordPress工作目录上的所有用户开放权限时,我也看到了忽略UPLOAD的相同行为。

这里是两个FTP日志的比较(在两种情况下都使用vsftpd):

确定案例(现有系统):

Mon Jul 16 20:51:43 2018 [pid 3] [username] OK MKDIR: Client "<ipAddress>", "./wp-content/upgrade/so-widgets-bundle.1.12.0-wtpjm3/so-widgets-bundle/admin"
Mon Jul 16 20:51:43 2018 [pid 3] [username] OK CHMOD: Client "<ipAddress>", "./wp-content/upgrade/so-widgets-bundle.1.12.0-wtpjm3/so-widgets-bundle/admin 775"
Mon Jul 16 20:51:44 2018 [pid 3] [username] OK UPLOAD: Client "<ipAddress>", "./wp-content/upgrade/so-widgets-bundle.1.12.0-wtpjm3/so-widgets-bundle/admin/admin.css", 11907 bytes, 584.82Kbyte/sec
Mon Jul 16 20:51:44 2018 [pid 3] [username] OK CHMOD: Client "<ipAddress>", "./wp-content/upgrade/so-widgets-bundle.1.12.0-wtpjm3/so-widgets-bundle/admin/admin.css 664"

失败案例(新系统)

Mon Jul 16 21:50:51 2018 [pid 17045] [username] OK MKDIR: Client "<ipAddress>", "./wp-content/upgrade/so-widgets-bundle.1.12.0-bYpnl8/so-widgets-bundle/admin"
Mon Jul 16 21:50:51 2018 [pid 17045] [username] OK CHMOD: Client "<ipAddress>", "./wp-content/upgrade/so-widgets-bundle.1.12.0-bYpnl8/so-widgets-bundle/admin 775"
Mon Jul 16 21:50:54 2018 [pid 17045] [username] FAIL CHMOD: Client "<ipAddress>", "./wp-content/upgrade/so-widgets-bundle.1.12.0-bYpnl8/so-widgets-bundle/admin/admin.css 664"

CHMOD似乎失败,因为该目录中没有刚刚创建的admin.css文件。

尝试

WordPress为我玩过的FS_METHOD定义了一个。根据{{​​3}},如果未指定任何方法,除非脚本确定存在安全问题,否则它将尝试使用direct。如果有孔,它将尝试使用ftpext。由于我了解这是操作系统使用的模式,因此我尝试设置以下内容:

define( 'FS_METHOD', `ftpext` );

此(ftpext)不会改变使我感到惊讶的行为。尚不清楚1)该算法没有发现什么内容可以告诉新安装避免使用direct,因此2)无论如何它都试图使用失败的ftpext

同样,这似乎是旧安装所做的,因为我确实在两个系统上的FTP日志中都看到了活动。

在设置SSH之前,我不希望ssh2模式能正常工作(也许我会尝试设置它)。尚未尝试过ftpsockets,但是我想这是第四种选择的原因。

任何见识甚至是对大脑的欢迎都将受到欢迎。

0 个答案:

没有答案