Download delivery methods explained

For downloadable products, there are several ways of delivering downloadable content to your customers, depending on your hosting configuration.

You can find these options in Admin->Configuration->Attribute Settings:

Download by Redirect

Download by Redirect ... when set to True ... uses the Linux/unix "symlink" feature to create a temporary file "stub" in the /pub folder. Then your customer is directed to that file-stub for their download. This means the customer can only ever access it via that stub, which disappears after their download is over. It hides the "real" location of the file so they can't just share the download link with their friends and have them steal your downloads for free.
This option only works on Linux hosts.  On Windows hosts this option will not work because Windows doesn't support symlinks, at least not via PHP.
This option requires that the "pub" folder be set to read-write permissions ... typically 777 (or 755 on suexec hosts).
This method is not affected by PHP max_execution_time limits.

Download without Redirect

If Download by Redirect is set to False, then the download link given to the customer is the direct link to the file in your /download folder ... meaning they can download as often as they want and share the link with their friends ... potentially letting folks steal your downloads.  
This option has its security limitations, but works on both Windows and Linux hosts.
This method is not affected by PHP max_execution_time limits.

Download by Streaming

Download by streaming only works when Download by Redirect is off.  Instead of giving the customer a URL to the file, Zen Cart sends the file as a download, in 2KB chunks. This helps with server RAM load as well as completely preventing any download link from ever being shared with your customers.
This option works on both Windows and Linux hosts.
There is one limitation with this method ... your server's PHP configuration for max_execution_time needs to be set to a value large enough for your largest file to complete its download, or at least configured in such a way that Zen Cart is allowed to override it. Zen Cart attempts to set it to unlimited when the download starts, but if your server won't allow that, it'll default to the server's master setting ... which is often 30 seconds.
  • 0 Users Found This Useful
Was this answer helpful?

Related Articles

How can I find out what version of Zen Cart or PHP or MySQL I'm using?

To find out what version of Zen Cart or PHP or MySQL you are currently using, you can simply go...

Getting a BLANK PAGE? Here's the answer ...

If you're getting a blank page when trying to browse to a certain page on your store, or after...

What's New in the Upcoming v2.0 release?

Database Abstraction Layer and Sql CacheThe abstraction layer has been re-factored to include a...

Image Preparation - How-to

I've seen several posts where people obviously aren't quite sure about the best way to set up...

Some tips to modify stylesheet

1. Download Web Developer extension for FireFox here2. Install & restart FireFox. You should...