wordpressの管理画面でSSH接続設定
wordpressの管理画面からデフォルトでFTP接続は出来ますが、SSH接続はできないので設定。
使いドコロが多そうなのでメモ。
SSH2ライブラリ インストール
# yum install libssh2-devel
# pecl install -f ssh2
ここでエラー。
WARNING: failed to download pecl.php.net/ssh2 within preferred state "stable", will instead download version 0.12, stability "beta"
WARNING: channel "pecl.php.net" has updated its protocols, use "pecl channel-update pecl.php.net" to update
....
sh: phpize: command not found
ERROR: `phpize' failed
色々調べたら、「channel://pecl.php.net/ssh2-0.12 を使ってインストールしろ」とか「phpizeを使えるようにphp-develをインストールしろ」とかあったので試す。
# yum install php-devel
# pecl install channel://pecl.php.net/ssh2-0.12
これで無事インストールできたので、php.iniに以下の記述を追加。
extension=ssh2.so
Apacheを再起動して、wordpressの管理画面を見に行くと...
無事ssh接続が追加されました。
追記
wp-configに接続情報等を設定しておくことができるみたいです。
その他の設定も実は色々あったり。知らなかった。。。
自動更新とかで失敗する場合にも設定するとうまくいったりするらしい。
/* wordpressへのルート・ディレクトリ設定 */
define( 'FTP_BASE', '/path/to/wordpress/' );
define( 'FTP_CONTENT_DIR', '/path/to/wordpress/wp-content/' );
define( 'FTP_PLUGIN_DIR ', '/path/to/wordpress/wp-content/plugins/' );
/* 公開鍵へのルート設定 */
define( 'FTP_PUBKEY', '/home/username/.ssh/id_rsa.pub' );
/* 秘密鍵へのルート設定 */
define( 'FTP_PRIKEY', '/home/username/.ssh/id_rsa' );
さらに追記
実は上記の時点で接続は出来ていたけど、自動更新がうまく行かなかった。
上の記述をしているにも関わらず、「ルートディレクトリが見つかりません。」みたいなエラーがでてハマってました。
原因はwordpress配下のユーザーがapacheでなかったから。
管理画面から画像uploadとか自動更新をする場合は、apacheにしないと出来ないので注意。
これ、wp界の常識なのかもしれないですが、すっかり抜けてました。
Author And Source
この問題について(wordpressの管理画面でSSH接続設定), 我々は、より多くの情報をここで見つけました https://qiita.com/macer_fkm/items/488e325088cf65f97aee著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .