624

SSHキー を使用したSFTPのみを使用するライブサーバーでWordPressを使用しています。

プラグインをインストールしてアップグレードしたいのですが、プラグインをインストールするには FTP ログインを入力する必要があるようです。WordPress にプロセス全体を処理させる代わりに、手動でファイルをアップロードしてプラグインをインストールおよびアップグレードする方法はありますか?

4

33 に答える 33

819

WordPress は、直接書き込みできない場合に、プラグインまたは WordPress の更新をインストールしようとしているときにのみ、FTP 接続情報の入力を求めます/wp-content。それ以外の場合、Web サーバーが必要なファイルへの書き込みアクセス権を持っている場合は、更新とインストールが自動的に処理されます。この方法では、FTP/SFTP または SSH アクセスは必要ありませんが、Web サーバーで特定のファイル権限を設定する必要があります。

さまざまな方法を順番に試し、直接および SSH の方法が使用できない場合は FTP にフォールバックします。

https://github.com/WordPress/WordPress/blob/4.2.2/wp-admin/includes/file.php#L912

WordPress は一時ファイルをディレクトリに書き込もうとします/wp-content。これが成功した場合、ファイルの所有権を独自の uid と比較し、一致する場合は、プラグイン、テーマ、または更新をインストールする「直接」方法を使用できるようにします。

なんらかの理由で、使用するファイルシステム メソッドの自動チェックに依存したくない場合は'FS_METHOD'wp-config.phpファイル内でいずれかの定数を定義する'direct', 'ssh', 'ftpext' or 'ftpsockets'と、そのメソッドが使用されます。これを「direct」に設定しても、Web ユーザー (Web サーバーを実行するユーザー名) に適切な書き込み権限がない場合、エラーが発生することに注意してください。

要約すると、wp-content のパーミッションを変更したくない (または変更できない) 場合は、Web サーバーに書き込みパーミッションを持たせるために、これを wp-config.php ファイルに追加します。

define('FS_METHOD', 'direct');

ここで説明されているアクセス許可:

于 2011-04-13T13:25:53.263 に答える
275

前に述べたように、パーマの修正はもう機能しません。それに応じて perms を変更し、以下を .xml ファイルに追加する必要がありますwp-config.php

define('FS_METHOD', 'direct');
于 2012-02-22T19:36:14.160 に答える
71
  1. さらにwp-config.php_define('FS_METHOD', 'direct');
  2. ディレクトリwp-content/、をサーバーに書き込み可能にしますwp-content/plugins/
  3. プラグインをインストールします (プラグイン dir を dir にコピーしますwp-content/plugins)。

バージョン 3.2.1 で作業

于 2012-04-16T05:05:24.507 に答える
52

ファイルを開きwp-config.php、次の行を追加します。

define('FS_METHOD', 'direct');

これは私のために働いています...ありがとう

于 2016-02-27T11:23:46.977 に答える
34

wp-config.phpへの簡単な変更

define('FS_METHOD','direct');

それだけです。ftpなしでワードプレスの更新をお楽しみください。

別の方法:

WordPress の更新を容易にするために、この方法が機能しないようにするホストが存在します。幸いなことに、この害虫が FTP ユーザー名とパスワードの入力を求めないようにする別の方法があります。

繰り返しますが、wp-config.php ファイルの MYSQL ログイン宣言の後に、次を追加します。

define("FTP_HOST", "localhost");
define("FTP_USER", "yourftpusername");
define("FTP_PASS", "yourftppassword");
于 2014-12-26T12:41:58.247 に答える
21

wp-content\plugins通常、プラグインをディレクトリにアップロードするだけです。SFTP 経由でこのディレクトリにアクセスできない場合は、行き詰まっている可能性があります。

于 2009-03-12T20:59:02.847 に答える
16

Ubuntuを使用している場合、私にとって有効な簡単な解決策は、次のようにApacheユーザー(デフォルトではwww-data)に所有権を与えることです。

cd your_wordpress_directory
sudo chown -R www-data wp-content
sudo chmod -R 755 wp-content
于 2012-02-12T20:32:24.690 に答える
16

ターミナルで次のコードを実行します

sudo chown -R www-data /var/www

詳細については、 Wordpress on Ubuntu install plugins without FTP access を参照してください。

于 2015-07-24T09:51:23.947 に答える
15

次のコードを wp-config に追加します

define('FS_METHOD', 'direct');

FS_METHODはファイルシステム方式を強制します。direct、ssh2、ftpext、または ftpsockets のみにする必要があります。通常、更新の問題が発生している場合にのみ、これを変更する必要があります。変更しても問題が解決しない場合は、元に戻す/削除してください。ほとんどの状況では、自動的に選択された方法が機能しない場合、「ftpsockets」に設定すると機能します。

(基本設定) 「直接」は、PHP 内から直接ファイル I/O 要求を使用することを強制します。これは、構成が不十分なホストでセキュリティの問題が発生することを伴います。これは、適切な場合に自動的に選択されます。

(二次設定) "ssh2"は、インストールされている場合に SSH PHP 拡張機能の使用を強制することです

(3rd Preference) "ftpext"は、FTP アクセスに FTP PHP 拡張機能の使用を強制するものであり、最後に

(第 4 優先) "ftpsockets"は、FTP アクセスに PHP Sockets Class を利用します。

詳細については、http: //codex.wordpress.org/Editing_wp-config.php#WordPress_Upgrade_Constantsをご覧ください。

于 2014-05-22T05:13:53.667 に答える
12

WordPress 2.7 では、zip ファイルを直接アップロードできます (プラグイン ページの下部にリンクがあります)。FTP アクセスは必要ありません。これは 2.7 の新機能で、プラグインのみで動作します (まだテーマでは動作しません)。

于 2009-03-12T21:00:05.607 に答える
9

古いスレッドを復活させますが、ファイルを編集することなくSFTP機能を追加するSSH SFTPUpdaterSupportと呼ばれる素晴らしい新しいプラグインがありwp-config.phpます。また、WordpressのSFTP実装は、サーバーで有効にされていないことが多い、ややあいまいなPHPモジュールに依存しています。このプラグインは別のPHPSFTPプラグインをパッケージ化するため、Apache側で何も構成する必要はありません。

私はSFTPサポートを機能させるためにたくさんの問題に遭遇しました-このプラグインはそれらすべてを解決し、ただ素晴らしいです。

于 2012-02-08T16:47:22.153 に答える
8

SSH SFTPUpdaterSupportプラグインもお勧めします。私のすべての問題も解決しました...特に、管理者を介してプラグインを削除することに関して。通常の方法でインストールするだけで、次にWordPressからFTPの詳細の入力を求められたときに、SSHの秘密鍵をコピーして貼り付けるかPEMファイルをアップロードするための追加のフィールドが表示されます。

私が抱えている唯一の問題は、キーを記憶させることです(両方の方法を試しました)。プラグインを削除する必要があるたびにそれを見つけて入力しなければならないという考えは好きではありません。しかし、少なくとも今のところは確実な修正です。

于 2012-02-27T19:34:47.977 に答える
8

はい、プラグインを WordPress に直接インストールします。

  1. プラグイン フォルダーをコピーして、WordPress プラグイン フォルダーに貼り付けます。
  2. 管理者側 (/test/wp-admin) に移動してから、プラグイン リンクに移動し、プラグインの名前を確認します。
  3. プラグインを有効にして、プラグインを簡単にインストールします。

その他のオプション

  1. プラグイン コードの zip ファイルを作成します。
  2. 管理者側 (/test/wp-admin) に移動し、プラグインのリンクに移動してから [新規追加] をクリックし、プラグインの zip フォルダーを参照してプラグインをインストールし、プラグインをアクティブ化するオプションが出てくるので、プラグインをアクティブ化してください。プラグインを有効にします。
于 2013-11-26T10:02:27.203 に答える
8

ステレオインタラクティブからの回答は、すべてのオプションをカバーしています。FTP を使用する別の方法について言及したかっただけです。FTP アクセスを許可していない理由は、セキュリティのためだと思います。これらのセキュリティ上の問題に対処する 1 つの方法は、127.0.0.1 のみをリッスンする FTP サーバーを実行することです。

これにより、WordPress 内から FTP を使用できるようになり、プラグインを外部に公開することなくプラグインをインストールできるようになります。これは、Joomla! などの他の一般的な Web アプリケーションにも適用できます。そして Drupal。これは、BitNami アプライアンスクラウド サーバーで行っていることであり、非常にうまく機能しています。

于 2011-07-27T14:43:39.937 に答える
7

これを試して

1)wp-config.php追加でdefine('FS_METHOD', 'direct');

2)wp-contentディレクトリを777書き込み可能に設定します。

3) プラグインをインストールします。

于 2012-09-28T07:04:26.177 に答える
6

私たちは (開発サーバーとライブサーバーの両方で) SSH で SFTP を使用し、WordPress アップロード機能を使用しようとしました (それほど難しくはありません)。Toby に同意します。プラグインをwp-content/pluginsディレクトリにアップロードし、そこから有効にします。

于 2009-03-14T18:42:13.823 に答える
6

SFTP または SSH を使用して WordPress のプラグインを自動更新することは可能ですが、ssh2 pecl 拡張機能が必要です。次のチュートリアルを使用して、その方法を見つけることができます

于 2009-09-14T11:03:28.287 に答える
5

これを試してください wp-content フォルダーに正しい権限が与えられているかどうかを確認してください。

wp-config.php を編集して、次の行を追加します

define('FS_METHOD', 'direct');

フルアクセスのために、「wp-content」ディレクトリを www-data に chmod します。

プラグインをインストールしてみます。

于 2017-12-18T07:49:06.313 に答える
4

はい、できます。

追加する必要があります

define('METHOD','direct');

あなたのwpconfigで。ただし、この方法はセキュリティ違反があるため、好ましくありません。

ありがとう、

于 2019-05-21T05:30:52.550 に答える
3

方法 1: 次 のように設定できます。 1. wp-config.php に次の行を記述する必要があります。

define('FS_METHOD', 'direct'); 

注: これは define( 'DB_CHARSET', 'utf8mb4' ) の後に置きます。

  1. wp-content パーミッションまたはパーミッションを再帰的に設定します 775 完全なパーミッションは、filezilla 経由で付与できます。ディレクトリをクリックして書き込み>権限>読み取り/書き込みと実行をチェックし、サブディレクトリへの再帰もチェックします

方法 2:

またはこれを設定することもできます

define("FTP_HOST", "localhost");
define("FTP_USER", "yourftpusername");
define("FTP_PASS", "yourftppassword");
于 2019-12-27T07:01:51.190 に答える
2

ここに簡単な方法があります。

次のコマンドを実行します。

これにより、Apache の mod_rewrite モジュールが有効になります

$sudo a2enmod rewrite

このコマンドは、フォルダーの所有者を www-data に変更します

$sudo chown -R www-data [Wordpress Folder Location]

上記のコマンドを実行した後、FTP なしで任意のテーマをインストールできます。

于 2019-04-01T19:54:21.033 に答える
0

二段

  1. 以下のコードを wp-config ファイルに追加します

    define('FS_METHOD', 'direct');
    
  2. サーバーがSSHに接続されている場合のように、フォルダーに完全な許可を与える必要があります。次に、ターミナルに以下のコードを貼り付け、Webサイトフォルダー内にいることを確認してから、コードの下を実行します

    sudo chmod -R 775 wp-content/plugins 
    

    またはウェブサイトのフォルダに完全な許可を与える

    sudo chown -R www-data:www-data website_folder
    
于 2019-12-04T09:02:58.870 に答える