PermissionError при загрузке файла на новый производственный сервер
Я перенес свой проект Django на новый производственный сервер. На предыдущем рабочем сервере все работало нормально. Во время миграции я обновился до Ubuntu 20.04 и Django 4.0.3. Теперь все снова работает, за исключением загрузки файлов.
Когда я пытаюсь создать экземпляр объекта Invoice, он работает, пока я не пытаюсь загрузить файл вместе с ним. Добавление счета-фактуры с файлом дает следующие ошибки:
Файл загружен в правильную (смонтированную cifs) папку, но по какой-то причине экземпляр объекта, содержащего ссылку на файл, не может быть добавлен в базу данных?
Разрешения папки /var/www/html/media:
drwxrwxrwx 2 root root 0 Mar 17 08:57 invoices
chown не работает по какой-то причине (я читал, что это как-то связано с монтированием cifs?), но var-www не был владельцем папки invoices на предыдущем сервере, и это работало нормально...
Любая помощь будет очень признательна!
Я нашел решение.
Мне пришлось добавить uid=www-data,forceuid к команде монтирования cifs. Пользователь apache не имел правильных разрешений.
(Затем размонтировать и снова смонтировать)