Описать проблему ↗

Обновления и перенос

После переноса сайт не записывает файлы в uploads

После переноса не загружаются изображения и файлы в uploads. Объясняем, как проверить пользователя процесса, путь и место хранения без опасной смены прав.

Редакция «починимсайт» · Обновлено · 3 мин. чтения

Что происходит и с чего начать

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

Что можно проверить самостоятельно

  1. Попробуйте маленькое тестовое изображение разрешённого формата. Запишите ошибку и проверьте, касается ли она всех файлов или только больших, определённых типов и отдельных разделов.
  2. Уточните, где должны храниться новые загрузки и свободно ли место. Сравните этот путь с фактической конфигурацией после переноса, не меняя массово права всего проекта.
  3. Сообщите, открываются ли старые файлы и появляется ли новая запись в панели. Сохранённая запись без файла отличается от полного отказа ещё на этапе отправки.

Как понять результаты проверки

Администратор проверяет владельца, права и пользователя процесса, разработчик — настроенный путь и обработку ошибок. Возможны дополнительные ограничения окружения, поэтому видимая доступность папки из терминала не всегда подтверждает доступ приложения. После исправления записи проверяют способ выдачи файлов: загрузка может пройти, а ссылка остаться неверной. Также важно не сделать приватные документы публичными ради удобства проверки. Права должны соответствовать назначению хранилища, а не просто позволять любому процессу изменять весь каталог сайта.

Что проверяет разработчик

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

  1. Определите пользователя веб-процесса и фактический путь хранения. Проверьте права на родительские каталоги, а не только конечную папку.
  2. Сравните настройки временного каталога загрузки и конечного хранилища. Убедитесь, что раздел не смонтирован только для чтения и на нём есть место.
  3. Проверьте дополнительные ограничения окружения, если обычные права выглядят корректно. Символическая ссылка может указывать на старый путь.

На что обратить внимание

При копировании файлы нередко получают владельца администратора. Приложение читает страницы, но не может создать новую папку или переместить временное вложение.

Как исправляют причину

Настройте владельца, группу и минимально необходимые права на каталоги записи. Не делайте весь сайт доступным для записи и не используйте 777 как универсальное исправление.

Как убедиться, что проблема решена

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

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