「権限がありません エラーコード:3 リクエストコード:14」でプラグインアップデートが出来ない

「権限がありません エラーコード3 リクエストコード14」でプラグインアップデートが出来ない

さくらの VPS で稼働させている WordPress サイト、一応問題なく動いているのだが一つ困ったことに WordPress の管理画面からプラグインのアップデートができない。

アップデートしようとすると FTP の接続情報を入力するように促される。 FTPクライアントは WinSCP を利用しているが、 WinSCP とサーバーとのやり取りは 「秘密鍵」 を使うようにしてるので、 WordPress に FTP の接続情報を入力してもおそらく上手くいかないと思う。

と言うよりも、 FTP ユーザー名と FTP パスワードがこの画面で何故か上手く反映されないので、接続情報の入力はこの時点で諦めました。


Sponsored Link

手間だけど一度ローカルに新しいプラグインをダウンロードして、 WinSCP からアップデート。 さぼっていたので10個アップデートするプラグインがあり、そのうち半分のプラグインは問題なくアップデートできた。 しかし Akismet、Broken Link Checker、Contact Form 7、Nginx Cache Controller、W3 Total Cache のアップデートが上手くいかず。

パーミッションの問題だろうと考え、 WinSCP で 775 にしてみるも WinSCP 上では変更できず。 WordPress の所有者は Nginx になっているので、 WinSCP からアクセスするユーザーではパーミッションの変更が出来ないのではないかと判断。

Poderosa を立ち上げて、Nginx のグループに WinSCP でログインするユーザー名を登録するため、以下のコマンドを入力。

usermod -G nginx username

次に以下のコマンドを入力し、 WinSCP で使うユーザーがどこのグループに所属するか確認する。

groups username

「username : username nginx」 と表示されれば無事 Nginx のグループにも登録されたこととなる。

「username」 は WinSCP でログインする時のユーザー名です。

更に Nginx に所属するグループであれば書き込みが可能になるよう、以下のコマンドを入力。

chmod -R 775 /var/www/html/the-fool.me/wp-content/plugins/contact-form-7

これをアップデートできなかったプラグインすべてに適応。

ここまでやって Akismet、Broken Link Checker、Contact Form 7 についてはプラグインのアップデートが可能となった。

しかし、Nginx Cache Controller と W3 Total Cache のアップデートは上手くいかず。 新旧のプラグインの中身を比べると、 Nginx Cache Controller は 「js」 というフォルダー、 W3 Total Cache は 「extensions」 というフォルダーが新たに加わっていることがわかり、しばし悩んだ末以下のコマンドを入力してみる。

chmod -R 777 /var/www/html/the-fool.me/wp-content/plugins/w3-total-cache

フルアクセス権のパーミッション 「777」 にすることで、Nginx Cache Controller と W3 Total Cache のアップデートは上手くいきました。

アップデート後はパーミッションを 「775」に変更してます。

WordPress 本体のバージョンアップとプラグインのアップデート、 WordPress 本体や SQL のバックアップ、更にアップデートできないプラグインがあったことで半日作業となった :ase:

ここ愚者と AnswerTaker も VPS + Nginx に引っ越ししたいのだが、サーバー関連は素人にはなかなかハードルが高い。 もうしばらくヘテムルさんでいいかな :wink:

Sponsored Link

コメントを残す