«Ошибка. Не могу создать директорию wp-content/uploads/ .Проверьте, доступна ли родительская директория для записи.»

Если у вас возникла подобная ошибка, то вероятнее всего вы недавно сменили хостинг. На поиски решения проблемы можно потратить много времени и решения будут самые разные. Но одно остается неизменно — проблема возникает чаще всего из-за неправильно настроенного сервера.

Если ваш сайт на shared хостинге и вы не являетесь обладателем VPS, VDS — то можете смело писать в тех.поддержку и вашу проблему решат без вашего участия. В противном случае, пробуем решение описанное ниже.

Причина
Интернеты переполнены решением проблемы по типу: «установить права доступа 777», это НЕправильное решение. Просто потому, что это делает ваш сайт уязвимым.

При загрузке картинок, плагинов, да и вообще всего средствами WordPress — мы используем PHP из-под пользователя или группы, имеющего права на выполнение скриптов и запись в данную директорию. Во многом это зависит от того, используем мы «PHP как модуль Apache» или «PHP как CGI» и т.д. Чаще всего, это группа/пользователь Apache, либо www-data.

В моем случае, фаилы и папки принадлежали моему ftp-пользователю и группе, имени этого пользователя. Что чаще всего и является проблемой:

Фаилы и директорий, принадлежат ftp-пользователю и его группе. А в группу пользователя не входят apache или www-data. Из-за чего и возникает проблема.

 

Решение
Добавить пользователя apache или www-data в группу пользователя. Можно было бы установить владельцем и группой — непосредственно apache или www-data, но тогда возникнут проблемы с работой через ftp. Поэтому мы оставим пользователя и донастроим сервер

Сделать это можно через SSH, выполнив в консоли под пользователем root, команду:

  1. usermod -a -G имяГруппы имяПользователя

Для проверки, узнать к какой группе принадлежит пользователь — можно командой:

  1. groups имяПользователя

После этого сменить права на папку /wp-content и вложенные в нее директории на 775. т.е. писать в директорию может пользователь и член группы.
А права фаилов — на 664. Вот и все.