Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

WordPress on EC2 Requires FTP Credentials to Install Plugins

I just installed WordPress 3.5.2 on an Amazon Linux AMI EC2 micro instance. When I tried to install the wp-db-backup plugin (Plugins -> Add New), I was prompted for a Hostname, FTP Username, FTP Password and Connection Type.

The answer to this question recommended that passwd be done at the command line. I'm not clear on exactly what I'm doing at the commandline based on this answer. So I Googled and found an article on configuring vsftpd. The article discusses the generation of a certificate on the server and I'm wondering whether I'm going off track here by following this article. I'm using CentOS 6.3 locally, and an Amazon Linux AMI on EC2).

Any assistance/guidance will be appreciated. Thanks in advance.


EDIT


I was reading the WordPress Codex which discussed ftp constants for the wp-config.php file. It recommended that I define as few of these constants as needed to correct my update issues. I'm I on the right track here (especially security-wise)? I've listed the constants below. Any guidance will be appreciated.

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); 
like image 626
Anthony Avatar asked Jul 21 '13 01:07

Anthony


2 Answers

The main issue here is that apache does not have access to the folders. The default permission is given to the ec2-user in the AMI.

run this in your terminal and you should be good to go.

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

Once this is done you should be able to upload themes, plugins, updates etc.

like image 178
Basil Abbas Avatar answered Sep 28 '22 00:09

Basil Abbas


Try this code in your wp config file

define('FS_METHOD', 'direct'); 
like image 35
Faizan Khan Avatar answered Sep 28 '22 00:09

Faizan Khan