I have an aspx/vb.net page that allows users to upload documents to my server. Due to the volume I want to move the upload off my server to another site. I was thinking of using a client based ftp solution, but any other solutions would be considered. I will put together a test page that you can use to simulate what needs to be done, but basically, the user would select a file, enter some descriptive info, and click a button to upload. The button would invoke a process to upload the document to an ftp site and then postback to the page where the descriptive information and location where the document was stored would be saved. Currently the site the documents are stored on is just a GoDaddy site. The documents are stored primarily as a repository and are seldom accessed so this makes a simple cheap solution. I would like the solution to be browser independent as much as possible. We have an active x solution that we can plug in to do this, but that limits us greatly.
1) The process would need to be able to prevent the loading of the file if it was larger than a certain size.
2) The process would need to be able to only allow defined file types to be uploaded based on what is in the ftpFileName variable. Assume it would be a | delimited list of extensions.
3) The ftp would need to check to make sure there is not already a file with the same name if so, add another directory to make it a unique.
Example The default directory location provided by the page would be:
\EE\2013\13\EE-333-113\1341\
If the user wanted to upload a file called [login to view URL] and that file already existed it would add another directory to the provided location:
\EE\2013\13\EE-333-113\1341\11345
There may be some logic to creating this new directory, but for now just generate a number to do this.
The variables would be(of course this depends on the solution):
ftpSite
ftpUser
ftpPasserd
ftpDirectory
ftpFileName
ftpBinary
ftpFileType
ftpFileSize
The project would also entail recommendation of the ftp client or other solution and any licensing costs for that software.