It is likely that the system user running the application doesn't have permission to write content to the destination folder. WordPress files are typically hosted on a web hosting server or Droplet, and require certain permissions to work properly.
Debian like:
chown -R www-data:www-data /var/www/{yourpath}/wp-content/uploads
I was having a similar problem after migrating from a development site to a production site. It turned out that the message is deceptive. Check Settings, Media. Verify the directory for media is accurate for the current site. If the site was migrated, the directory listed still be from the old site and may need to be updated.
If this error is showed after migrating wordpress to new server check upload path in: settings->media->Store uploads in this folder
default value is wp-content/uploads.
Probably you have old path.
Change permissions on the /wp-content directory to 0775 and try it again.
sudo chmod 0775 {yourpath}/wp-content/uploads
If it fails, change the permissions to 0777 and try again.
sudo chmod 0777 {yourpath}/wp-content/uploads
Once it is successful, be sure to return the permissions on /wp-content to whatever they were when you started.
You may also want to put the permissions back on any other files you changed while attempting to resolve the issue.
More options you can find here: https://www.tipsandtricks-hq.com/how-to-fix-the-unable-to-create-directory-error-in-wordpress-5264
Reggards
You may have to add a folder named uploads first before you change any permissions.
My environment is xampp in Ubuntu 18.04 and the Wordpress installation failed to create the folder 'uploads'.
cd into the wp-content directory.
mkdir uploads
while still in the wp-content path, use chmod 0777 to add the relevant permissions:
sudo chmod 0777 uploads
This worked for me.
Go to wp-admin/options.php
Under upload_path
replace with exactly wp-content/uploads
(no quotes, no extra slashes)
That worked for me after I had tried to all other solutions for days.
I tried all the solutions from How to Fix the Unable to create directory Error in WordPress in my Centos7. But it won't work.
Then I found some useful message in /var/log/audit/audit.log
type=AVC msg=audit(1495357844.782:604): avc: denied { write } for pid=2721 comm="httpd" name="wp-content" dev="dm-5" ino=1074299184 scontext=system_u:system_r:httpd_t:s0 tcontext=unconfined_u:object_r:etc_runtime_t:s0 tclass=dir type=SYSCALL msg=audit(1495357844.782:604): arch=c000003e syscall=83 success=no exit=-13 a0=7fffba9c62c0 a1=1ff a2=8 a3=5 items=0 ppid=1556 pid=2721 auid=4294967295 uid=48 gid=48 euid=48 suid=48 fsuid=48 egid=48 sgid=48 fsgid=48 tty=(none) ses=4294967295 comm="httpd" exe="/usr/sbin/httpd" subj=system_u:system_r:httpd_t:s0 key=(null)
Check the file infomation : ls -Z /data/web/wordpress
Found that SELinux prevented Httpd to access the files. So you can disable the SELinux, or modify the file context: chcon -R --type=httpd_sys_rw_content_t /data/web/wordpress . And it works.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With