I don't know if anyone else has run across this, but if you are running IIS7 you may run into a lightly documented file size restriction if you are trying to upload anything over 30 MB. This limitation is separate from those in upload.php and php.ini (very frustrating). Here is where I found the best documentation
http://forums.iis.net/p/1108662/1702390.aspx#1702390
In short you need to run this:
cd\windows\system32\inetsrv
appcmd set config "domain.com" -section:requestFiltering -requestLimits.maxAllowedContentLength:104857600 -commitpath:apphost
where you replace domain.com with the name of your site in IIS.
Figured I would save anyone else the hours it took me to find this.
-Ben
October 24, 2009 - 4:03pm
it is a strange and mistifying coincidence that you would make this post on the same day I realized I was having this problem.
I've been aware of this setting in IIS6, especially for classic ASP, but I thought in IIS7 ASP.NET everything migrated to httpRuntime configuration, and this completely caught me off-guard. Could have spent weeks trying to fool around with application pool settings and session timeout settings, because I thought that this for sure was related to the time it takes to upload the file, not its size.