That code also doesn't test at 20 minutes but at 1 hour and 20 minutes:
80x60(seconds)=4800seconds.
Downloadable products is a minefield and there's nothing simple at all about it.
Older versions of IE will only handle downloads up to 2 Gbs in size. Newer versions wil handle 4 Gbs. Google Chrome handles downloads in the same way as IE.
Firefox will handle any size of download, but if you use the "Pause" button in Firefox it actually means starting all over again from the beginning.
The size of file which PHP can handle will depend on the number of bytes which need to be read and 32 bit systems will be able to handle fewer bytes being read than 64 bit systems will.
Then there's the not so small matter of whether servers wll permit "Download by redirect" to work. The more scecure the server the less likely you will be to be able to use this feature - as it needs to create symbolic links in the pub folder "on the fly".
Vger




