I tried to upload a 30MB file into Windows Azure today using my MVC 4 site. When the file got to 99% I got a 404 error saying that my upload Action was nowhere to be found. Fortunately, I successfully uploaded a file earlier in the day at about half the size, so I knew the site wasn't completely broken.
If you are experiencing this error, chances are you already tested uploading large files locally and realized that you need something like this in your Web.config for everything to work:
<system.web> <httpRuntime maxRequestLength="1073741824" requestValidationMode="2.0" /> </system.web>
However, what nobody tells you, is that Windows Azure (i.e. IIS 7) looks at a completely different configuration setting for uploading files.
<system.webServer> <security> <requestFiltering> <requestLimits maxAllowedContentLength="1073741824" /> </requestFiltering> </security> </system.WebServer>
Adding this additional configuration option will ensure your large file uploads work locally and in the cloud. Just in time for the next release.