Из описания не слишком понятно
.
На директорию стоят владельцы user:www-data и права 644 ? Т.е. более наглядно -rw- -r-- -r--.
Так как при загрузке через форму владельцем файла становится www-data == apache, добавление идёт от имени процесса apache, а не user-а
.
Возможное решение - sticky bit в правах директории. При этом кто бы не создавал файлы, они будут наследовать владельца, группу и права, определённые для каталога. Кому давать sticky bit, необходимо проверить на практике...
- Предполагая, что через форму добавление идёт от имени www-data, т.е. apache, я бы, во-первых, дал sticky bit группе
- Во-вторых, чтобы user, например, по ftp не создал бы файл с пользователем:группой - user:user, т.е. недоступный apache, я бы добавил sticky bit ещё и пользователю.
sudo chmod -R ug+s [директоррия]
- получится -rwS -r-S -r--
Должно работать, но... "практика - критерий истины"