Wordpress ubuntu не удалось создать директорию

Обновлено: 07.07.2024


Недавно мне потребовалось сделать перенос WordPress сайта с одного домена на другой. Копия сайта нужна была для последующей её переработки на новом домене. Перенос сайта с домена на домен дело не пыльное, задача решена, можно приступать к работе. Обычно так всегда и было, но не в этот раз…

А в этот раз у меня возникли трудности с загрузкой изображений в библиотеку медиафайлов через админку WordPress – появилось следующее уведомление об ошибке:

Файл «****.jpg» загрузить не удалось. Не могу создать директорию wp-content/uploads/2021/06. Проверьте, доступна ли родительская директория для записи.

За более чем пятилетнюю практику работы с WordPress, подобного рода ошибка мне встретилась впервые. Но, как говорится, в любой незнакомой ситуации "Google в помощь". Проанализировав поисковую выдачу я выделил две возможные причины возникновения данной ошибки:

  1. Отсутствие необходимых прав доступа CHMOD (иногда их еще называют атрибутами) к папке wp-content (CHMOD должно быть равным 700, 755 или 777).
  2. В настройках сайта прописан не правильный абсолютный путь к файлам Вордпресс, который можно изменить через параметр upload_path на странице глобальных настроек WordPress.

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

Первым делом я проверил какое значение установлено в правах доступа к папке wp-content и вложенным в нее папкам и файлам. Оказалось, что там все хорошо и установлено значение 700 - разрешены запись, чтение и выполнение файлов внутри папки. Впрочем, чаще всего с правами доступа всегда все в порядке, в редких случаях могут быть выставлены какие-то ограничения.

Как изменить права доступа к папке wp-content?

Для не очень опытных пользователей поясню, что проверить права доступа к папке wp-content, и в случае необходимости изменить их, можно через файловый менеджер вашего хостинга. Открыв корневую папку своего WordPress сайта вы увидите среди прочих папку wp-content. Кликните по ней правой кнопкой мыши и посредством выпавшего контекстного меню перейдите в раздел свойств вашей папки.

Здесь стоит заметить, что в зависимости от того хостинга, на котором работает ваш сайт, раздел с правами доступа к папке может называться по разному. Так, на моем хостинге Beget , этот раздел называется Изменить атрибуты, а сами настройки атрибутов выглядят вот так:

Ошибка «Не могу создать директорию wp-content/uploads/» в WordPress

Убедившись, что ошибка не связана с правами доступа, приступаем к проверке параметра upload_path глобальных настроек WordPress. Для того, чтобы попасть на страницу глобальных настроек вашего вордпресс сайта нужно авторизоваться под учетной записью администратора сайта, а затем в адресной строке браузера прописать следующий адрес:

На открывшейся странице содержится внушительная масса различных параметров и полей, поэтому, чтобы долго не искать нужный нам параметр upload_path, воспользуйтесь поиском встроенным в браузер (сочетание клавиш CTRL + F).

В моем случае в поле этого параметра был прописан абсолютный путь к файлам вордпресс, который принадлежал другому хостингу. Как вы можете помнить, я сделал перенос сайта на другой домен и хостинг.

Далее, для устранения ошибки действуем следующим образом:

  1. Очищаем поле параметра upload_path и сохраняем настройки. После этого необходимо проверить, заработала ли загрузка изображений в библиотеку медиафайлов или нет. Если не заработала, значит переходим к пункту 2. Обратите внимание: если у вас поле upload_path было изначально пустое и загрузка файлов в библиотеку медиафайлов вашего WordPress сайта все равно не работала, значит вам тоже следует проделать действия, описанные в пункте 2.
  2. Если действия из пункта 1 вам не помогли, то прописываем в поле параметра upload_path правильный абсолютный путь к файлам Вордпресс (о том, как узнать абсолютный путь к папке с uploads написано ниже).

Как узнать абсолютный путь к папке с uploads

Уточнить абсолютный путь можно в поддержке вашего хостинга, а можно узнать самостоятельно, создав php файл со специальным кодом:

Сохраните файл с любым названием, например patch.php и загрузите в корневую папку сайта. Для того, чтобы выполнить сценарий данного кода, нам необходимо открыть наш файл, сделать это можно набрав в строке браузера следующий адрес:

Результатом выполнения скрипта будет веб-страница со следующим содержимым:

Путь к корневой папке: /home/XXXXX/YYYYY

Добавим к получившемуся результату /wp-content/uploads и получим в итоге такой путь:

Путь к корневой папке: /home/XXXXX/YYYYY/wp-content/uploads

Это и есть нужный нам абсолютный путь к папке uploads. Вставляем его в поле параметра upload_path сохраняем настройки и снова пробуем загрузить изображение. Теперь должно все заработать.

Вот таким не хитрым способом можно решить ошибку Не могу создать директорию wp-content/uploads/», которая могла возникнуть на вашем WordPress сайте при работе с Библиотекой медиафайлов.

Ошибка с загрузкой файлов

После переезда на новый хостинг, мне нужно было опубликовать материал на сайте с десятком скриншотов, как и полагается я зашел в редактор и начал писать текст, но при заливке файлов начала вылазить ошибка типа:


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

Первое мнение, не выставлены права CHMOD на папку uploads/2015/10, но даже после рекурсивной установки прав 777, на все директории внутри uploads, ошибка не куда не исчезает. А одним плагином special text boxes пост не украсить, тем более нужно в каждую публикацию загружать уникальные скриншоты.

Так как же быть?

Как решить проблему с созданием директории?

Я вижу несколько путей решения, мне помог последний пункт, но вам возможно поможет другой. Советую начинать с первого и идти дальше.

Ещё есть вариант загрузки файлов вручную через FTP клиент или файлменеджер хостинга, но если сайт живой и обновляться часто, этот способ надоест через неделю. Давайте перейдем к реальным действиям.

1. Установка CHMOD прав на папки.

Лично мне это не помогло, но начните именно с этого, на папке Uploads должны стоять CHMOD 777 или 755 в зависимости от хостинга.

Попробуйте установить права так же на папку с годом и месяцем и после этого заливайте файл через редактор и смотрите, если ошибки нет и файл залился, то проблема решена и дальше ничего не нужно делать.

2. Указываем новые пути к папке uploads

После смены хостинга точный путь до папки wp-content/uploads/ изменятся и его нужно заменить обязательно, в противном случаи wordpress будет обращаться к несуществующей директории.

полный путь к папке


Теперь нужно указать точный путь от корневой папки хостинга к папке uploads, для этого создаем в любой папке файл с таким содержимым:

Читайте также: