17

I run my own web server for development and, on it, I installed a WordPress instance. When I try to add plugins to this instance from the admin interface, WordPress asks for FTP access.

I don't use FTP and have no plans to do so in the future. I know I can change some configuration in WordPress so that I am able to upload without FTP. What exactly should I configure to accomplish this?

John Hascall
  • 9,176
  • 6
  • 48
  • 72
Manny Calavera
  • 6,815
  • 20
  • 60
  • 85

6 Answers6

14

Execute this command on your ubuntu terminal

sudo chown -R www-data /var/www
PrivateUser
  • 4,474
  • 12
  • 61
  • 94
13

One of three things:

  1. Either change permissions so your web server can read the wp-content directory, which should be fine for a development server.
  2. Run PHP as FastCGI which can run as a different user than your web server.
  3. Install the ssh extension for PHP (sudo apt-get install libssh2-php on ubuntu on think)
blockhead
  • 9,655
  • 3
  • 43
  • 69
  • +1 - Just dealt with this issue myself. I used solution #1 and `chown`'d the directory containing wordpress to user `www-data`. – Ryan Tenney Aug 16 '10 at 17:42
  • 1
    @Ryan for you own sake and sanity, it might be better to use setfacl to give you and www-data access to it, just so you can access the files as well. – blockhead Aug 16 '10 at 17:51
  • You just blew my mind. I never knew `setfacl` existed, but it will undoubtedly make my life easier. Thanks! – Ryan Tenney Aug 16 '10 at 17:57
  • Curiously, changing group ownership to www-data with rw perms still resulted in the ftp page being invoked. Only when changing the actually owner to www-data did it go away. Any ideas why? – Scott Aug 09 '16 at 01:45
0

I was not satisfied with any of these answers so I kept on searching. I found an answer that was so simple I was surprised it had not been mentioned already.

https://askubuntu.com/a/826805/145472

This answer says to add a line to wp-config.php

define('FS_METHOD', 'direct');

Job done. I cannot take credit for knowing this but I do feel it needs a mention here too.

0

One way to do it is change assign ownership of the wordpress installation to www-data:

chown -R www-data:www-data .

Change file permissions:

chmod -R g+rwX .

Add yourself to the www-data group:

usermod -a -G www-data myusername
Don Flannagan
  • 573
  • 4
  • 6
0

DON FLANNAGAN’s method works for me , THX

Blockquote

One way to do it is change assign ownership of the wordpress installation to www-data:

chown -R www-data:www-data . Change file permissions:

chmod -R g+rwX . Add yourself to the www-data group:

usermod -a -G www-data myusername

Blockquote

Cass
  • 1
  • 1
-1

The funny thing is that uploading media works. So I was wondering why plugins not? After changing the ownership of wp-admin it worked for me.

sudo chown -R www-data wp-admin
Pete
  • 1,191
  • 12
  • 19