將 Ubuntu 升級到 16.04,現在 Wordpress 更新不起作用

將 Ubuntu 升級到 16.04,現在 Wordpress 更新不起作用

我的 Ubuntu 15.10 系統運作得很好,Wordpress 更新是透過 ssh 進行的。但當我將 Ubuntu 升級到 16.04 時,切換到 php7.0 破壞了 Wordpress 更新。起初它會提示輸入 FTP 登入憑證,直到我安裝了 php-ssh2(它警告說它是基於 git 快照)。現在,當我嘗試升級插件時,它說

An error occurred while updating WP to Twitter: Unable to locate WordPress Content directory (wp-content).

在 /var/log/apache2/error.log 中:

[Sun Jun 12 11:01:10.969931 2016] [:error] [pid 5545] [client 192.168.1.11:65278] PHP Warning:  file_put_contents(): Unable to open ssh2.sftp://Resource id #81/.maintenance on remote host in /home/blog/wordpress/wp-admin/includes/class-wp-filesystem-ssh2.php on line 252, referer: http://xxxx.com/wp-admin/update-core.php?action=do-plugin-upgrade
[Sun Jun 12 11:01:10.970772 2016] [:error] [pid 5545] [client 192.168.1.11:65278] PHP Warning:  file_put_contents(ssh2.sftp://Resource id #81/.maintenance): failed to open stream: operation failed in /home/blog/wordpress/wp-admin/includes/class-wp-filesystem-ssh2.php on line 252, referer: http://xxxx.com/wp-admin/update-core.php?action=do-plugin-upgrade

我是否缺少一個包,或一個配置項,或者什麼?

答案1

我有同樣的問題。這似乎是 php-ssh2 中的一個錯誤(來自 Ubuntu 儲存庫)。

刪除 php-ssh2 並使用 pecl 安裝更新版本(pecl install ssh2-1.0)後,問題解決。

我提交了一份錯誤報告: https://bugs.launchpad.net/ubuntu/+source/php-ssh2/+bug/1617294

答案2

安裝 pecl 擴充功能對我來說不起作用(誰知道為什麼),但我找到了替代方法:

我剛剛透過 scp 將此插件上傳到我的 VPS,它解決了問題:https://wordpress.org/plugins/ssh-sftp-updater-support/

答案3

然而,就我而言,上述方法都不起作用,ralphm 的補丁在 PHP 程式碼中為我修復了 Ubuntu 14.04 和 Ubuntu 16.04 上 WordPress 的 update-via-ssh2-問題:

--- a/wp-admin/includes/class-wp-filesystem-ssh2.php
+++ b/wp-admin/includes/class-wp-filesystem-ssh2.php
@@ -185,7 +185,7 @@
        if ( '/' === $path ) {
            $path = '/./';
        }
-       return 'ssh2.sftp://' . $this->sftp_link . '/' . ltrim( $path, '/' );
+       return 'ssh2.sftp://' . intval($this->sftp_link) . '/' . ltrim( $path, '/' );
    }

    /**

不要忘記在更新後重新套用此補丁,直到最終修復發佈到 WordPress 版本為止。

答案4

就我而言,僅安裝 1.1.2 lib 版本有幫助...
pecl install ssh2-1.1.2

  • PHP 7.0.22-0ubuntu0.16.04.1
  • 阿帕契/2.4.18

相關內容