Servidores Web rodam com um usuário diferente do que o usuário que vc usa na maior parte dos casos, provavelmente é um erro de permissão.
Mas propondo uma outra solução, subir arquivos para o mesmo servidor da aplicação é uma má pratica, pois pode ocorrer problemas como encher o armazenamento e isso causar uma falha na sua aplicação e também existem algumas brechas de segurança relacionada(dependendo da linguagem alguem pode fazer upload de um arquivo contendo codigo malicioso e acessar ele pra executar).
No caso o ideal seria utilizar uma solução como o S3 da Amazon para armazenar seus arquivos. O que facilita bastante a sua vida quando vc quiser fazer uma aplicação escalavel