首页 文章

EC2上的WordPress需要FTP凭据才能安装插件

提问于
浏览
44

我刚刚在Amazon Linux AMI EC2微实例上安装了WordPress 3.5.2 . 当我尝试安装wp-db-backup插件(插件 - >添加新)时,系统提示我输入主机名,FTP用户名,FTP密码和连接类型 .

this question的答案建议 passwd 在命令行完成 . 我'm not clear on exactly what I'在基于this answer的命令行上做了什么 . 所以我用Google搜索并在configuring vsftpd找到了一篇文章 . 本文讨论了在服务器上生成证书的问题,并且按照本文的说法,我将在这里偏离轨道 . 我在本地使用CentOS 6.3,在EC2上使用Amazon Linux AMI) .

任何协助/指导将不胜感激 . 提前致谢 .


EDIT


我正在阅读WordPress Codex,它讨论了wp-config.php文件的ftp常量 . 它建议我根据需要定义这些常量,以纠正我的更新问题 . 我列出了下面的常数 . 任何指导将不胜感激 .

define('FS_METHOD', 'ftpext');
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');
define('FTP_USER', 'username');
define('FTP_PASS', 'password');
define('FTP_HOST', 'ftp.example.org');
define('FTP_SSL', false);

8 回答

  • 2

    这里的主要问题是apache无法访问这些文件夹 . 默认权限授予AMI中的ec2-user .

    在你的终端运行这个,你应该很高兴 .

    sudo chown -R apache:apache /var/www/html
    

    完成后,您应该可以上传主题,插件,更新等 .

    有关如何在EC2上安装Wordpress的详细说明,请点击此链接 . http://www.tecsolsoftware.com/blog/how-to-install-wordpress-drupal-joomla-etc-on-aws-ec2-in-5-minutes/

    如果您希望使用Nginx安装Wordpress,请点击此链接 . http://www.tecsolsoftware.com/blog/superfast-wordpress-nginx/

  • 124

    在wp配置文件中尝试此代码

    define('FS_METHOD', 'direct');
    
  • 5

    更改wordpress目录的所有者

    sudo chown -R www-data:www-data /var/www/wordpress
    

    或者尝试

    define('FS_METHOD', 'direct');
    
  • 29

    我在Stephen White's blog post找到了这个问题的答案 .

    简而言之,我必须这样做

    • 为我的EC2实例FW中的端口范围20-21和一些其他端口创建自定义规则

    • 安装并配置FTP服务器vsftpd

    • 创建并配置FTP用户

    • 并将我的FTP设置放在wp-config.php文件中

    这对我来说效果很好 .

  • 44

    这对我有用:

    首先按照Faizan所说的做,如果你的 wp-config.php ,请加上以下行:

    # you will want this as close to the bottom as possible
    define('FS_METHOD', 'direct');
    

    然后,您需要TEMPORARILY将您的文件权限交换到更开放的状态 . 在命令行中键入以下内容:

    sudo chmod 777 -R /your_whole_wp_project
    

    现在运行您的更新,然后将权限更改为以下内容:

    sudo chmod 664 -R /your_whole_wp_project
    

    我知道这是一个安全问题,也许不是最好的方法,但我唯一可以试着让它为我工作 .

  • 5

    'define('FS_METHOD','direct');'在EC2中编辑我的安全组后,建议为我工作,允许对端口443的出站访问(HTTPS)

  • 1

    sudo chown -R www-data:www-data / var / www / html / wordpress

    上面的命令为我做了伎俩 .

  • 0

    对我来说这是一个selinux问题 . 这样做对我来说: chcon -Rv --type=httpd_sys_rw_content_t /var/www/html/

    见:https://www.svnlabs.com/blogs/centos-7-selinux-apache-php-writeaccess-permission/

相关问题