Uploading Version Files #
Attach a downloadable release file to a version so clients can download updates.
What This Extension Adds #
Core DMSI-DDLS manages file downloads through a general files system. With DMSI Update Server, each version has a dedicated file upload field in its edit form. Uploaded files are stored in a protected directory and served exclusively through HMAC-signed download tokens — never directly.
How to Upload a File #
- Edit the version (DDLS > Versions > Edit)
- Scroll to Update Server Settings
- Click Upload File or drag and drop your ZIP into the upload area
- Wait for the upload to complete
- The file name, size, and SHA-256 hash appear below the upload area
- Save the version
You do not need to publish immediately. The file is stored and ready; publishing controls when customers can download it.
File Storage #
Uploaded files are stored at:
wp-content/uploads/dmsilm/updates/{product_id}/{version}/{filename}.zip
An .htaccess file in the uploads directory blocks direct web access to .zip files. All download requests must go through the /dmsilm-download/?token=... endpoint with a valid signed token.
SHA-256 Hash #
The hash is computed automatically when you upload the file. The hash appears:
- In the version edit form
- In API responses (
file_hashfield) - In download response headers (
X-Checksum-Sha256,Digest)
Customers and client SDKs can use the hash to verify the downloaded file was not corrupted or tampered with.
Replacing a File #
Upload a new file to the same version to replace it. The new file overwrites the old one and the hash updates.
Note: If customers have already downloaded the previous file, they hold a different binary than new downloaders. Always create a new version for a new release rather than silently replacing files on an existing version.
File Size Limits #
The maximum upload size is controlled by your PHP upload_max_filesize and post_max_size settings. Check Settings > System Status to see your current limit.
