Question or issue on macOS:
I am trying to upload pictures in WordPress but I get this error:
I am running it in localhost but the answers I have found are to change the folder permissions to 777 on the server.
I tried making an uploads folder myself, but it’s of no use and there is no option to change the folder permissions to anything except read and write.
I’m using XAMPP on Mac OS X; I’m new to WordPress – how can I fix this?
How to solve this problem?
Solution no. 1:
Provided that your wordpress directory is “owned” by the correct user, you should see your problem resolved if you set the permissions to 755.
Log on to your server, and
wp-content, then run:
chmod 755 uploads
Solution no. 2:
It is most likely a permissions issue. Find the user processes running on the site by navigating to your sites
wp-content folder on the server your site is on. Then type this;
ps aux | egrep '(apache|httpd)'
Ignore root, but look at the other users
root 2507 0.0 0.3 423820 14328 ? Ss Aug04 0:51 /usr/sbin/httpd apache 4653 0.5 1.9 483900 77252 ? S 16:27 0:14 /usr/sbin/httpd apache 4654 0.5 2.1 500160 84912 ? S 16:27 0:13 /usr/sbin/httpd apache 4656 0.8 2.0 484708 78712 ? S 16:27 0:21 /usr/sbin/httpd ...
For me it actually was apache (usually www-data). Finally change the users of the
uploads folder to this user;
sudo chown -R apache:apache uploads
(make sure you are in the directory above the uploads folder when running this command)
This will permit the correct user to access this directory using the correct access permissions of 755.
By using the dreadful ‘777’ advice of others, you are simply allowing the correct user to access the directory assigned to the incorrect user – as well as anyone else who can access that directory!
Solution no. 3:
I would recommend, for security’s sake, instead of
sudo chmod 777 uploads
which gives permissions (read, write, execute) to the user who owns the folder (the root), to other users in the file’s Group and to other users not in the file’s group (anyone else).
sudo chmod 755 uploads
which gives all permissions to the owner, but only read and execute permissions to the other users
Solution no. 4:
For anyone who has landed here but using a Windows / IIS platform then you can achieve the same thing by giving modify permissions to the
Everyone group for your
Solution no. 5:
another possible reason is wrong owner and group of
chown -R _www:_www wp-content/uploads
assuming your apache group and owner is