Установка не удалась не удалось создать директорию
Исправляем ошибку «Не могу создать директорию wp-content/uploads/» в WordPress
После переезда на новый хостинг, мне нужно было опубликовать материал на сайте с десятком скриншотов, как и полагается я зашел в редактор и начал писать текст, но при заливке файлов начала вылазить ошибка типа:
Первое мнение, не выставлены права CHMOD на папку uploads/2015/10, но даже после рекурсивной установки прав 777, на все директории внутри uploads, ошибка не куда не исчезает. А одним плагином special text boxes пост не украсить, тем более нужно в каждую публикацию загружать уникальные скриншоты.
Так как же быть?
Как решить проблему с созданием директории?
Я вижу несколько путей решения, мне помог последний пункт, но вам возможно поможет другой. Советую начинать с первого и идти дальше.
Ещё есть вариант загрузки файлов вручную через FTP клиент или файлменеджер хостинга, но если сайт живой и обновляться часто, этот способ надоест через неделю. Давайте перейдем к реальным действиям.
1. Установка CHMOD прав на папки.
Лично мне это не помогло, но начните именно с этого, на папке Uploads должны стоять CHMOD 777 или 755 в зависимости от хостинга.
Попробуйте установить права так же на папку с годом и месяцем и после этого заливайте файл через редактор и смотрите, если ошибки нет и файл залился, то проблема решена и дальше ничего не нужно делать.
2. Указываем новые пути к папке uploads
После смены хостинга точный путь до папки wp-content/uploads/ изменятся и его нужно заменить обязательно, в противном случаи wordpress будет обращаться к несуществующей директории.
Для этого заходим в Настройки / Медиафайлы ( site.info/wp-admin/options-media.php ) и обращаем внимание на пункт “Сохранять файлы в этой папке“.
Теперь нужно указать точный путь от корневой папки хостинга к папке uploads, для этого создаем в любой папке файл с таким содержимым:
Невозможно создать директорию
Невозможно создать директорию в WordPress, что делать? Это очень просто исправить. Прочитайте ниже и повторите мои действия.
Невозможно создать директорию, исправляем такую проблему в ВордПресс.
Иногда при создании нового блога на WordPress при загрузке изображения, выходит сообщение, примерно, такого содержания:
«Не могу создать директорию /home/1234567/public_html/wp-content/uploads/2011/04. Проверьте, доступна ли родительская директория для записи.»
Из этой статьи Вы узнаете, что Вам сделать, когда невозможно создать директорию в ВордПресс.
Как исправить данную проблему? Ниже Вы найдете два простых способа, как исправить такую ситуацию, когда WordPress показывает такое сообщение.
Для решения этой проблемы, когда невозможно создать директорию, нужно:
Важно: Не забыть вернуть параметры прав доступа в первоначальное значение, после того, как исправили проблему.
Вам необходимо сменить атрибуты на права доступа к папкам WordPress и файлам.
Все популярные FTP клиенты имеют опцию смены прав доступа к файлам и папкам. Эту опцию можно найти в меню, нажав правой кнопкой мыши на файл или папку. Используйте справку Вашего FTP клиента для более детальной информации.
Например:
В случае с FTP клиентом FileZilla, подключаем свой сайт, открываем папку public_html и нажимаем правой кнопкой мыши на папку wp-content или в ней uploads, нажимаем правой кнопкой мыши в окне FileZilla на папку uploads и в открывшемся контекстном меню выбираем строку «права доступа к файлу», где прописываем числовое значение 711 или 755. Если нужно сделайте то-же и для папки wp-content. Эти параметры позволяют владельцу сайта, а значит и папок, их редактировать, читать и запускать на исполнение.
Аналогичные действия можно произвести и без установки на компьютер программ FTP – клиентов. Войдите в Ваш кабинет администратора на хостинге и откройте интегрированный файловый менеджер. В этом файловом менеджере откройте нужную папку или файл и измените права доступа.
После того, как Вы создали директорию, верните прежние значения прав доступа для большей безопасности Вашего сайта.
Самое важное о чем я хочу Вас предупредить, это не выставлять параметры 777, такие атрибуты, позволяют вносить изменения не только владельцам сайта, но и любым пользователям. Мы с Вами думаем о безопасности сайта и не выставляем такие параметры.
Вот мы с Вами и разобрались, что нужно сделать, если появилась ошибка “Невозможно создать директорию в WordPress”
Если не сейчас, то в будущем Вам точно понадобится эта информация: Пошаговая инструкция, как обновить PHP на примере блога на движке WordPress.
«Автор: Леонид Никитин»
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Как исправить ошибку WordPress «Каталог назначения уже существует»
Вы переустанавливаете старый плагин или тему, которую использовали на своем веб-сайте WordPress, а обнаруживаете ошибку: Каталог назначения уже существует. Знакомая ситуация?
Это распространенная ошибка среди тех пользователей WordPress, кто устанавливает/ переустанавливает и работает с множеством плагинов и тем. «Каталог назначения уже существует» может стать досадной ошибкой, поскольку она не позволит вам установить нужный плагин или тему, что в свою очередь помешает развитию вашего веб-сайта.
Суть ошибки “Каталог назначения уже существует”
Прежде чем приступить к устранению проблемы, важно понять, что это за ошибка и почему она происходит, чтобы предпринять необходимые шаги и избежать этой проблемы в будущем.
WordPress использует систему структурированных каталогов (папок) для организации основных файлов. Для тем и плагинов создаются разные каталоги. WordPress также создает специальные подкаталоги и внутри них для каждого плагина и темы, устанавливаемых на сайт.
Иногда, когда вы сталкиваетесь с проблемой при установке плагина или темы, и не можете завершить установку, WordPress может оставить каталоги и некоторые файлы в них на вашем сервере. Если вы попытаетесь установить этот же плагин еще раз, подобное действие сбивает с толку WordPress, поскольку каталог с таким именем уже существует. Это то, что приводит к ошибке в WordPress «Каталог назначения уже существует».
Эта ошибка также может возникать при удалении плагина или темы или при попытке восстановить веб-сайт из резервной копии.
Как исправить
Чтобы исправить эту ошибку, все, что вам нужно, найти каталог с темой или плагином, который мешает вам установить нужный плагин / тему, и удалить его.
Для этого необходимо войти на сервер, где находятся все основные файлы WordPress для вашего сайта. Можно войти на свой сервер, используя либо CPanel, либо FTP-клиент. Мы покажем вам, как работают оба метода.
Метод 1: Через панель управления CPanel
Если вы используете управляемую хостинговую платформу WordPress или общий хостинг для размещения своего веб-сайта, получить доступ к файлам WordPress можно с помощью CPanel.
Шаг 1: Войдите в CPanel
Вы можете найти CPanel, просто набрав /cpanel в конце URL вашего сайта (например, yourwebsite.com/cpanel). Если это не сработает, войдите в свою панель инструментов веб-хостинга и найдите ссылку для доступа к CPanel.
Затем введите свое имя пользователя и пароль для CPanel. Эти данные для входа предоставляются вам при первой регистрации на веб-хостинге. Вы можете найти их в приветственном письме.
Внутри CPanel вы увидите панель с множеством приложений. Найдите приложение File Manager и откройте его. Это работает и в панели управления DirectAdmin.
Шаг 2: Найдите каталог WP-Content
Через приложение File Manager вы получаете доступ ко всем файлам на вашем сервере. Чтобы добраться до файлов вашего сайта, найдите папку public.html.
В ней вы увидите каталог WP-Content, в котором находятся все плагины и темы вашего сайта.
Примечание. Если ваш веб-сайт установлен на поддомене или если вы размещаете несколько веб-сайтов на одном и том же сервере, сначала откройте основной каталог для соответствующего веб-сайта, чтобы получить доступ ко всем каталогам определенного сайта.
Шаг 3: Удалите соответствующий каталог
В каталоге WP-Content откройте каталог тем или плагинов, чтобы найти все подкаталоги для каждого плагина или темы, которые вы установили на своем веб-сайте.
Например, если вы хотите удалить каталог для плагина, откройте каталог «Плагины» внутри WP-Content и найдите подкаталог именно для этого плагина. Затем щелкните правой кнопкой мыши на подкаталог и выберите опцию «Удалить».
Как управлять несколькими сайтами WordPress с одной панели.
Способ 2: использовать FTP-клиент
Если вы используете VPS для размещения своего веб-сайта или предпочитаете не использовать CPanel, вы все равно можете получить доступ к файлам вашего сервера с помощью клиентского приложения FTP. FileZilla и WinSCP – отличные бесплатные приложения для доступа к файлам сайта по FTP.
Загрузите и установите клиентское приложение FTP на ваш выбор, а затем выполните те же действия, что и выше, для доступа к серверу, введя данные для входа в систему. Их можно найти в приветственном письме вашего хостинг-провайдера.
Затем найдите Public.html –> WP-Content –> Plugins и удалите соответствующий каталог, чтобы устранить проблему, связанную с плагином. Если проблема связанна с темой, войдите в каталог Public.html –> WP-Content –> Themes и удалите соответствующий подкаталог.
Надеемся, вы сможете установить плагин или тему без каких-либо проблем, связанных с каталогом назначения. Если вы продолжаете сталкиваться с одной и той же проблемой, свяжитесь с вашим поставщиком веб-хостинга, поскольку некоторые проблемы могут появляться и со стороны поставщика услуг.
Многие из этих общих проблем можно легко избежать, выбрав лучший и более стабильный веб-хостинг, который предоставляет оптимизированные серверы для веб-сайтов WordPress.
Ошибка. Не могу создать директорию wp-content/uploads. Проверьте, доступна ли родительская директория для записи.
И снова вопрос о выборе хостинга.
На днях настраивала блог на заказ на хостинге Fast VPS. Хостинг из серии профессиональных, поэтому создание блога на нем, для неподготовленного новичка может превратиться в процедуру под названием «Миссия не выполнима».
В этот раз, даже для меня, был небольшой сюрприз. При загрузке шаблона, плагинов, изображений через админку блога выскакивала надпись:
На первый взгляд ничего сложного, просто прописываем CHMOD (права доступа) 777 или 755 для папки wp-content.
Но как оказалось с правами доступа все в порядке.
Пришлось порыться в интернет в поисках решения и лишний раз убедиться в том, что на любую проблему уже точно есть решение :). Слава Интернет!
И даже если вы, как и я, установите максимальные права доступа (777) для каталога /wp-content/uploads, злобный WordPress по прежнему может продолжать ругаться. Связано это скорее всего с тем, что в настройках WordPress прописан не правильный абсолютный путь к файлам Вордпресс, который можно изменить через параметр upload_path глобальных настроек WordPress.
В моем случае этот путь вообще отсутствовал :).
Опишу кратко, что я сделала:
Как исправить ошибку «Не могу создать директорию wp-content/uploads.»
1. открыть страницу options.php через админку. В моем случае это — http: //anfisabreus.ru/wp-admin/options. php. Обратите внимание, эта страница откроется только после того, как вы войдете под логином и паролем в админку блога.
2. Найти поле upload_path — у меня это поле по каким-то причинам оказалось пустым. В этом поле нужно прописать абсолютный путь к папке с uploads.
Как узнать абсолютный путь к папке?
Можно уточнить у хостинга, либо создать файл php со специальным кодом:
И назвать его к примеру, path.php
Загрузить этот файл в корневую папку блога и открыть в браузере. Для моего блога получилось — http: //anfisabreus.ru/path. php
На открытой странице будет следующий текст:
Нас интересует первая строчка: Путь к корневой папке: /home/XXXXX/YYYYY
Скопировать — /home/XXXXX/YYYYY
и дописать /wp-content/uploads
в итоге должно получиться — /home/XXXXX/YYYYY/wp-content/uploads
Вот это и будет абсолютный путь к папке uploads
3. Вставьте этот путь в поле upload_path
4. Спуститесь вниз и сохраните изменения
После этого, ошибка при загрузки файлов, возникать не должна.
Не забудьте удалить файл path.php после того, как скопируете путь.
Но таких сложностей можно избежать если правильно выбирать хостинг. Для новичка решившего заняться бизнесом в Интернет, создание блога, кажется очень сложной задачей, а если еще добавить проблемы с хостингом, можно вообще отбить охоту продолжать начатое.
Так что, если Вы решили создавать блог самостоятельно, настоятельно рекомендую покупать «народный» хостинг, например Timeweb. Это поможет Вам избежать массы вопросов и головной боли.
На таких хостингах как TimeWeb:
1. Уже есть предустановленный WordPress, т.е. для его установки Вам не нужно будет закачивать файлы, создавать базу данных, настраивать файл wp-config.php и т.д.
2. Все права доступа на папки установлены правильно, как нужно! и все пути к папкам уже прописаны в глобальных настройках.
3. Вы без проблем создадите карту сайта xml — автоматически, что не возможно сделать на многих профессиональных хостингах — это очень распространенная проблема, с которой ко мне обращаются блогеры у кого блоги на профессиональных хостингах.
4. У Вас не будет проблем с созданием постоянных ссылок — файл .htaccess создастся автоматически. На профессиональном хостинге этот файл нужно создавать вручную.
Этот список скорее из серии какие сложности Вас ждут на профессиональном хостинге.
Желаю Вам легкого и быстрого создания блога. Если есть сложности с хостингом, пишите в комментариях. С удовольствием помогу разобраться.
Распаковка обновления … Не удалось создать каталог. WordPress
Когда я устанавливаю nextgen-gallery . Появится это сообщение об ошибке
Как я могу исправить эту проблему?
Это вопрос с разрешениями. Убедитесь, что каталог доступен для записи apache. Плагины распаковываются в каталог wp-content / plugins, поэтому я сначала попытаюсь записать в каталог как apache:
Установите соответствующие разрешения, чтобы исправить проблему. Вы можете прочитать о разрешениях здесь: http://www.linux.com/learn/tutorials/309527-understanding-linux-file-permissions
Ответ @skrilled и @ knutole был замечательный, но я обнаружил, что при попытке исправить проблему в папке плагинов все было в порядке, и ответ не сработал для меня.
Если у кого-либо еще есть эта проблема, попробуйте также посмотреть папку обновлений. Эта папка (из того, что я вижу) используется в качестве папки для хранения временных файлов для обновления WP обновлений или обновлений плагинов.
Если вы просто получите сообщение с сообщением «Не удалось создать каталог», и указан путь не указан, на самом деле он может говорить о папке обновлений.
для людей nginx
если у вас установлен php-fpm, вы должны сказать, что его пользователь и группа nginx. /etc/php-fpm.d/www.conf. найдите пользователя, которому по умолчанию присвоен apache, и измените его на nginx. также сделайте это для группы. затем выполните следующую команду:
также внутри вашего каталога wordpress выполните эти команды
измените имя пользователя на то, что ваше текущее имя пользователя.
но вы должны применить разрешения propper. запустите эти команды в вашем каталоге wordpress
Если вы используете vsftpd качестве своего FTP-сервера и включили пассивные подключения, вам нужно добавить pasv_promiscuous=YES в /etc/vsftpd/vsftpd.conf .
У меня была аналогичная проблема. Это началось с того, что я пытался обновить плагин на перенесенной установке WP. Я не понял, все мои разрешения были ТОЧНО такими же, как старый сервер. В моей ситуации я начал понимать, что мало что работает. Я не мог устанавливать / удалять плагины или темы, а также загружать медиафайлы. Затем я нашел исправление через некоторые исследования.
Если у вас все еще есть эта проблема и изменения разрешений НЕ исправить проблему, попробуйте это:
Войдите в свою панель управления хостингом и найдите свои настройки хостинга, где бы вы ни отредактировали свои настройки сценариев. В Plesk (как в моем примере) это будет в разделе «Сайты и домены». Нажмите на свое доменное имя внизу. На следующем экране, где говорится: «Поддержка PHP (запускается как …» меняет выпадающий список из «Apache module» на «Приложение FastCGI» . Все должно быть исправлено сейчас!
(Re) установка разрешений через ftp тоже не меняла. Нет SSH, поэтому мне пришлось войти в панель управления (directadmin в моем случае), в Диспетчере файлов, где я мог бы «Сбросить владельца» в «Сброс владения файлами» в каталог / wp-contents.
Я запускаю Nginx с WordPress. Я удалил папку обновления в wp-содержимом, а затем снова выполнил обновление с помощью графического интерфейса WordPress. Я заметил, что пользователь linux для созданной папки обновления был www-data. Затем я сделал
Вероятно, необходимо изменить разрешения для большинства папок, чтобы они не могли быть изменены с помощью www-данных, но я подумаю об этом завтра.
Проблема с разрешением, убедитесь, что apache (www-data) имеет права на запись.
Невозможно установить новые плагины из-за ошибки «Не удалось создать каталог»
У преподавателя есть трудности с учебной установкой wordpress. Устранение индивидуальных проблем с разрешением было поражено и пропущено, и они стали многолетней болью, поэтому я попрошу здесь. Что я могу сделать, чтобы WP Just Work? Виды ошибок, которые они получают:
Установка плагина: Лайтбокс 2 2.9.2 Загрузка установочного пакета из http://downloads.wordpress.org/plugin/lightbox-2.2.9.2.zip … Распаковка пакета … Не удалось создать каталог. /home/CIM140/public_html/wordpress/wp-content/upgrade/lightbox-2.tmp
Когда я su как www-data (пользователь apache работает как в Ubuntu), я могу сделать этот каталог просто прекрасным. Мой тестовый экземпляр wp устанавливает этот плагин просто отлично, поэтому я не понимаю, почему он не работает для них.
@pwnguin,
У меня были те же проблемы с запуском mod_php с WordPress, и я, наконец, понял это.
Пока вы управляете ящиком, это не вызовет никаких проблем с безопасностью.
Вам также может потребоваться изменить ваш umask на 022, поэтому новые каталоги, созданные WordPress, будут иметь 755 разрешений, а файлы будут иметь 644 разрешения.
Другим вариантом является переопределение разрешений файлов по умолчанию в wp-config.php:
Вы также можете заставить метод файловой системы обновляться.
- (Primary Preference) «Direct» заставляет его использовать запросы прямого ввода-вывода файлов из PHP, это чревато открытием проблем безопасности на плохо настроенных хостах. Это выбирается автоматически, когда это необходимо.
- (Secondary Preference) «ssh» означает принудительное использование расширения PHP SSH.
- (3-е предпочтение) «ftpext» – принудительное использование расширения PHP PHP для доступа к FTP и, наконец,
- (4-я преференция) «ftpsockets» использует класс сокетов PHP для доступа к FTP.
Они могут быть определены в wp-config.php с помощью: define(‘FS_METHOD’, ‘ftpext’);
Вы можете получить все print_r(@get_defined_constants()); определенные константы, выполнив print_r(@get_defined_constants()); команда в php.
Для меня (на Ubuntu) мне пришлось добавить umask 002 в /etc/apache2/envvars , чтобы заставить WordPress загружать плагины / изображения с 775 правами вместо 755 (т. /etc/apache2/envvars кому-либо помимо Apache и root изменять загруженные файлы)
Чтобы понять, почему у вас возникают эти проблемы, вам нужно понять основные концепции владения.
В принципе, вы знаете, что apache работает как пользователь www-data. Вот почему установка всего, что принадлежит этому пользователю, работает, потому что WordPress проверяет, что он может создавать файлы как пользователь, которому принадлежат его собственные файлы. Итак, что вы делаете, это сделать все принадлежащим пользователю, которому принадлежат файлы.
Если у вас полный и полный контроль над машиной, это нормально. С другой стороны, если это общий сервер хостинга, то вы создали дыру в безопасности.
Как правило, веб-сервер работает как некоторый пользователь (например, www-data), который затем запускает код другими пользователями (например, «otto», моя учетная запись пользователя). В этой ситуации веб-сервер не сможет создавать файлы как «otto» и, следовательно, не сможет правильно создавать файлы в качестве моей учетной записи. Таким образом, эта проверка WordPress на создание правильно принадлежащих файлов и, таким образом, возможность установки плагинов или файлов обновлений будет ошибочной, потому что наличие моих файлов, принадлежащих пользователю общего веб-сервера, будет представлять угрозу безопасности.
В таком случае WordPress должен правильно запросить у меня учетные данные FTP или что-то в этом роде. Это будет способ обойти проблему с учетной записью пользователя, аутентифицируя ее как пользователя, который должен писать файлы, а затем записывать их как этого пользователя.
Теперь вы пытаетесь решить эту проблему, изменив все файлы WordPress, принадлежащие той же учетной записи, что и веб-сервер. Более нормальный подход заключается в том, чтобы изменить, как веб-сервер записывает файлы, чтобы позволить процессу PHP «владеть» учетной записью пользователя, что он запускает файлы как.
Общий ответ на этот вопрос – «suphp». Эта версия PHP задает пользователю, что процесс PHP работает как с тем же пользователем, что и владелец файлов PHP, в котором он запущен. Это безопасно в настройках совместного хостинга, поскольку он гарантирует, что процесс PHP, выполняемый общим веб-сервером, выполняется как владелец файлов PHP и, таким образом, не может читать другие учетные записи пользователей и тому подобное.
На Ubuntu я считаю, что это общий способ сделать это:
Отключить старый mod_php
И вуаля. Теперь ваши файлы WordPress PHP принадлежат владельцу Normal . Никаких специальных трюков, никаких прав доступа или собственности или чего-либо подобного. Поскольку процесс PHP будет выполняться как владелец этих файлов, он сможет писать им в качестве этого владельца. Каталоги должны быть 755, файлы должны быть 644 (обратите внимание, что suphp не нравится, когда файлы могут быть перезаписаны группой, поэтому 755/644 – это правильный набор разрешений).
Вы должны предоставить права на запись в соответствующие каталоги. В идеале вы должны сделать это только для соответствующего файла или папки, а затем снова вернуть разрешения, чтобы не оставить уязвимым сайт.
Вы можете исправить это, используя следующие команды из командной строки (при условии, что вы находитесь в корневой папке WordPress):
Самым безопасным решением является добавление apache в ту же группу, что и владелец установки WordPress, и изменение всех разрешений на группу для записи.