Question

How do I upload a file to another folder that's outside of my project directory

So basically I recently setup a Block Storage volume in which I can upload static files to host for users.

My web app assets are currently sitting residing in /var/www/<project_name>/assets/img/user-images/, but I’d like to now upload all new assets to where I setup my Block Storage which is /mnt/assets/images/<all_files_comes_here.jpg>.

I can’t seem to do this in PHP using the move_uploaded_files function.

Also, would I require any file permissions setup in order for me to upload files to my Block Storage folder?

Please advise. Thank you.

Subscribe
Share

You need to make sure that your web user can write to /mnt/assets/images, if you use apache your web user is called www-data and you can change permission like this sudo chown www-data:www-data /mnt/assets/images.

I recomend using rsync protocol on linux ubuntu.

I use nginx @Mohsen47 , but yes I have changed the permissions to www-data. My only concerns are whether PHP will recognise such directories with a child directory inside root /mnt/assets/images.


Submit an answer
You can type!ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Hi @jeimanjeya

You need to either change the mount point, create a symlink or change root path in Nginx. But since you need PHP to be able to play nice, it might be possible to use the last option, since you code is going to be a different place than the images. To change the mount point, you need to modify fstab. To symlink: ln -s /mnt/assets/images /var/www/<project_name>/assets/img/user-images

Hi @jeimanjeya

You need to either change the mount point, create a symlink or change root path in Nginx. But since you need PHP to be able to play nice, it might be possible to use the last option, since you code is going to be a different place than the images. To change the mount point, you need to modify fstab. To symlink: ln -s /mnt/assets/images /var/www/<project_name>/assets/img/user-images

I have created symlink and also set all the permission still its not working for me. Kindly help me to do this.