Setting permissions for wordpress

Posted November 5, 2013 157.6k views
I installed wordpress on lamp and cannot update themes or install plugins. I get an "unable to create directory" error when I try to. When I spoke with support they told me to do this: root@domain:~# chown -R www-data /var/www/wordpress but what I got was this: chown: cannot access `/var/www/wordpress': No such file or directory So, I was told to find where wordpress was installed but my understanding is that according to the tutorials here on DO its installed in home and then moved to /var/www Can anyone help with this? Thanks!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

15 answers
sudo chown -R www-data:www-data /var/www

Everyone experiencing this issue should execute these commands:

sudo usermod -aG www-data $USER

Adds the currently logged in user to the www-data group.

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

Changes the ownership of the /var/www directory to www-data group.

sudo chmod -R 774 /var/www

Sets the proper permissions so you can upload files via sftp, manage files via command-line, and upload plugins and media directly in WordPress.

The following is not aimed toward the original poster, but toward a couple of the comment authors:

If this doesn’t fix the issue you’re having, you’ve got something else wrong and bashing DO is not going to help anyone. If you want a managed server, look for hosting elsewhere. If you need help, ask someone or hire an admin that knows how to not only ‘set things up’ but knows how to secure your server as well. You’ll be glad you did. DO is not for novices, even if they have a lot of tutorials.

"I installed wordpress on lamp..."

How? Did you follow a guide? If so, which one?

"... but my understanding is that according to the tutorials here on DO its installed in home and then moved to /var/www"

Not all tutorials take that approach.

Also, the command you need to execute is:
sudo chown -R www-data:www-data /path/to/WordPress/Installation
  • Sorry, for dumb question… Is it safe and right way to give all the permissions to apache for hole catalog of the site ? I’m new to it. I had the similar issue and fix it in the same way, but i’m not sure if is it right …

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

Errors out my site completely (500)

This is super annoying. All I want to do is be able to migrate a Wordpress site to a Digital Ocean droplet and have it work without spending days on it!
@jason: What webserver and OS are you using? The point is to make the files owned by the same user that is running the webserver.


For anyone on a Red Hat Linux or CentOS server, the owner:group needs to be


instead of


Hope this will help others using/stuck with RHEL.

Show answer This answer has been marked as resolved by feb.

Thanks for the reply. This is the tutorial I used:

When I access the site through ssh/sftp the wordpress installation is located:

So why isn't it working since that is /path/to/wordpress/installation or am I wrong?


by Etel Sverdlov
WordPress is a free and open source website and blogging tool that uses php and MySQL. It was created in 2003 and has since then expanded to manage 22% of all the new websites created and has over 20,000 plugins to customize its functionality. This tutorial shows how to install WordPress on a server with LAMP. It is written for Ubuntu 12.04.
That fixed it!

Thanks a lot Pablo!

I am having similar issues. My expectation is when I install WP through the DO admin it should just work. I can’t use migration plugins because there are file permission issues in default install of WP. I can’t upload plugins because there are file size upload limitations. I can’t run certain things because curl isn’t working out of the box.

I love the speed and performance but this has been a nightmare trying to migrate simple WP sites.

@robertcummings I just wanted to say thank you for this solution. I’ve been having this exact same problem since March and it effectively stopped me from updating anything on my site. Now everything is working perfectly!

I have the same problem, but Once I used this command sudo chmod -R 755 /var/www, one application of the server crashes, so I’m afraid to use commands for change permisions for the other apps that i have… What solution any of you recomend me, because the wordpress it’s installed like a sudbomain in my droplet, and I have many differents apps there.

I don’t want to do a mistake , but i need to install plugins and new theme for a blog, please help me

After trying many options, changing folder permissions fixed my Wordpress Permalinks issue. I hope this can guide other aspiring professionals as well.

I have the same problem. I tried everything above and nothing works. Plugin install works, WordPress automated update works but uploading a media file fails no matter what I try, I keep getting:

Unable to create directory uploads/2017/11. Is its parent directory writable by the server?

My permissions are set to drwxr-xr-x and www-data www-data I added my user to www-data. I restarted the Apache server several times. Nothing helps. I even tried a chmod 777, nothing.

My setup is Ubuntu 16.04 with Apache2, PHP7, mySQL5 and Let’s Encrypt.

Any idea what is going wrong here?


Well, solved it! For others who might have the same issue:

I moved my WordPress install from an old server. In case of moving a setup instead of clean install you need to change the path in dashboard->Settings->Media to your absolute path. E.g.


darice answer solved for me as well.. was moving a wordpress instance and not building new.

Submit an Answer