I have been asked to look into a way of allowing a small number of users to upload videos (taken within the organisation with the consent of the subject(s) of the videos) to a server and allow many users to download them to their own PC. This isn't in an educational setting so I won't have to consider any DPA or other legal matters, indeed the IT manager will be responsible for any legal considerations. I have been asked to investigate the options.
I have a few general questions that can be divided into two sections:
My "gut" feeling is to have some web pages for the upload and download facilities behind a login page. PHP will interact with a MySQL database so the files can be uploaded and the path, along with other data about the files, stored in the database. When downloading, the user interrogates the database via a web page in order to provide a link to the file on the server.
The files may be very large (500MB) and I understand that there's a file upload limit of 2MB in PHP. This can be increased, but is there an ABSOLUTE limit? This is planned to work on a LAN, rather than a WAN, so moving such large files shouldn't be such a problem.
I recall that there is a time-out when PHP scripts are running. Will that be relevant? If so, can it be increased and is there an ABSOLUTE maximum that can be set?
I know there are many excellent PHP tutorials out there, including playlists on YouTube so I think I should be able to create something (assuming the questions I have above can be overcome), but are there any pre-built solutions? I've heard of Sharepoint but have no experience of using it. I have some experience of Linux and xampp (it has Apache, PHP and MySQL) so MY preference, as a Yorkshireman, would be to go with that! However, there could be a preference for using a MS solution (Server 2008, IIS and MS SQL) so, if I develop everything at home using Linux and xampp, how easy would it be to transfer everything to a Windows environment?
I don't want to waste time developing this if there is an easy, cheap solution available or if I get to the final stages of the project, only to find that there's a massive hurdle that I can't overcome and I have to start from scratch.
Thanks for your time.