& Payments
Share any size files to users, groups, and the public.
Use the same user base for invoicing and payments!
Only a one-time price of $49.

DEMO Purchase


From sharing files, to getting paid; DistriFile provides several key benefits.
Click an item to toggle more information.

Save Time

You can share any amount and size of files to any number of users and groups with just a couple of clicks.

Save Money

For less than the cost of a yearly paid subscription to most cloud services, buying DistriFile gives you MORE for less money. Furthermore, DistriFile has a lifetime license, meaning you will never have to pay again! (Unless you need more than the 2 allowed installations.)

Be in Control

You are in control of your files and users. No limitations imposed by cloud based services. Set your own limitations for other users.

Know when

Know exactly when someone sees a file, invoice, or performs other actions in the system. Detailed logging is essential to knowing what your users are doing with your file server.

Get paid first!

Have a slow paying customer? You can choose to not give them the deliverable digital files until they pay the invoice. Once paid, the files get shared to them immediately.

No FTP Headaches

If you upload to someone's FTP server regularly, you can add their FTP server info to their account; and when you share a file to them, your server then uploads to their FTP AND send email notifications to you and anyone you specify with a status page of the upload as well as a summary when the upload completes.


DistriFile has many features. This list doesn't even cover all of them!
Click an item to toggle more information.


FTP & Cloud Service Replacement.

No one but you has access to your data.
Say good-bye to services that cost you money each month or that has limited functionality such as Dropbox, Google Drive, One Drive, etc.

Install it on your existing website on a subfolder or better yet, a subdomain. When you give out the url such as "" your clients will automatically can look foward to not having to use Dropbox, Google Drive, etc.

FTP was great back in the day, but if you must upload to FTP servers regularly, just let your DistriFile self-hosted file server do it for you while keeping you and your client updated on progress, success or fail.


HTTPS Ready + Hide the repository.

Encrypt all communication with your site using a SSL Certificate and using https.
If you have full control of; or your host allows, you can use the FREE let's encrypt certificates or any other valid SSL Certificate.

Keep your file repository hidden!
You can easily place the folder with all your files wherever you want on your server, such as a directory above public_html or even on a separate dedicated drive! That way your files can only be accessed by the preview/download script, and only with the unique code for each user / share. If you didn't, then someone could technically access a file if they knew the file name, but this way, there's zero chance someone can access unsecurely.


Set colors, css & messages to your liking.

Make it how you like it!
You can add custom CSS, switch to a pre-installed theme, or create your own theme!

Modify ANY text that is displayed!
We provide a utility in the Site Controller area for Admins to change some page names, phrases and even completely edit the HTML email templates that get sent out!
You could even overwrite all others by creating your own custom language file.

Unlimited Sizes & Sharing

Upload & Share multi-gigabyte files.

Really. It is virtually unlimited.
How big is the free space on your hard drive? On a 64 bit system, that is your limit.

Share to Users, Groups or anyone with an email address.
There's not a limit to how many people you can share with. In fact, the only limits are those that you configure.

Invoicing & Payments

Send Invoices and accept Payments.

Not only share files, but also handle your invoicing and payments with the same system! Finally, one website for you to handle two of your day to day activities with your clients.

Recurring Invoices
Reusable Invoice Items
Payment Reports
Sales Tax Reports
Accept Payments via PayPal or 2Checkout.
PayPal Express Checkout ready!

Detailed Logging

Know who did what and when.

Detailed logs gives administrators a lot of details of when users do things within your system.
There are many log types available such as:
File Uploads, Downloads, Previews, Edits, Deletes, Shares...
Logins, Failed Logins, Forgot Passwords (You can even ban or lock IP addresses.)
Invoice Views, Payments, etc.
Plus MANY MANY More!

How to videos

Current videos available for DistriFile. (Watch them full-screen.)

Server Requirements

DistriFile can be ran on either Linux or a Windows PC/Server.
Click an item to toggle more information.


Ubuntu, Debian, RedHat, etc. (64 bit)

DistriFile works best on Ubuntu or Debian.
Other variants have been known to work. As long as it is 64bit, you should be ok.


64 Bit

OS should be 64 bits.

In order to handle files over 2GB, the Operating System, Webserver Software (NGINX or Apache), and PHP MUST be 64 bits.


8.1+ PC (64 bit)

Although Linux is preferred, we have created a guide as well as a downloadable script to create a webserver on a Windows PC. It will install NGINX and PHP for you with a guided approach. It could possibly work with Windows Server, but hasn't been tested.
Click here to view the tutorial.

NGINX or Apache

We suggest NGINX as it is much faster and less resource intensive.
  • NGINX Version 1.4+
  • Apache Version 2.2+
  • PHP 5.5+

    Works very well with PHP 7!
    Can't be any lower than Version 5.5.

    You will also need the following php extensions active:
    cURL, FTP, gd, mcrypt, ZIP

    MySQL Server 5.5+

    MUST NOT be any lower than 5.5!
    DistriFile is now compatible with the new 5.7 version with STRICT mode enabled (should you wish to run with STRICT mode.)



    MediaInfo will allow you to view MANY details about most media file types such as images, audio and video.

    ffmpeg is currently only used to process files with audio to determine the LKFS/LUFS measurement if you choose to do so. This measurement is used in Broadcast Television to make sure a commercial or program complies with the CALM Act.

    Test your server!

    Test your server before you buy!
    1- Download this file to your server.
    2- Extract "test_distrifile.php" to a directory on your site.
    3- Open that page in your browser, e.g.,

    You should then see something like this:
    Need a new web host or a great VPS? Check out DigitalOcean.

    Contact Us

    Have a question? Need more information? Send us a message.

    Fill out the form without errors to show the send button.

    The latest version of DistriFile-PRO.

    Version 3.16

    [FIXED] Several stupid Internet Explorer bugs...
    • The reason for double files and some other incorrect things happening was when the user logged in, the sharing modals was being loaded twice depending on if pressing enter or clicking the login button when using different versions of IE.
    • Password progress meters now work in IE9.
    • File uploads are still wonky and limited to php.ini settings for IE9. There's no way around that at this time. Hopefully there aren't too many IE9 users out there!
    • Made some other tweaks for IE too.
    [FIXED] Update Process
    • Depending on the version being updated from, a discovery was made where if something changed in the functions.php or session handling files would cause strange errors.
    • Fixed by writing to a temporary file and then deleting at the end of the update.
    [FIXED] Regular users can now see the public shares they created from the Files menu.

    [FIXED] User Profiles
    • Better checking if globally turned off or per user.
    • If profile edit access is disabled, then clicking your name when logging in will do nothing.
    • Does not apply to admins or super admins when set in the Site Settings.
    [FIXED] In the profile page when you click your name, you will see the first address line instead of a duplicated second address line if entered.

    [FIXED] Removed some directories from being shown in the Orphan Files list. "private" won't be shown now...

    [FIXED] Invoice Payment Default Date
    • If you don't change the date when making a payment, it will now actually record the payment date as shown and not "today's" date.
    • Default date value was wrong variable...
    [FIXED] Public upload form to not submit when pressing enter on form fields.

    [ADDED] Session Duration
    • In Site Settings > Basic Info, you can set the time in minutes for a session to be valid. The default is 30 minutes.
    • If a user doesn't interact within this time, the session will be terminated forcing them to the login screen. If a user is uploading a file, the session will not be terminated if no interaction.
    • This setting is basically for an inactive time period, not since the user logged in.
    • Site Settings > Basic Info
    [ADDED] Option to allow users to share to other users automatically if the company in their profile matches other user's company in their profile.
    • Site Settings > Users.
    [ADDED] Option to disable sending email notifications to admin(s) when a user uploads files.
    • Site Settings > Files.
    [ADDED] Option to enable or disable creating public shares to system users.
    • This is inefficient in most circumstances so it is disabled by default.
    • Public shares to system users will NOT show up in their file listing when they're logged in!
    • Site Settings > Files.
    [ENHANCED] Overdue Invoice Processing
    • The first day it is overdue, it will send out the first reminder.
    • Subsequent reminders will be sent per the "Days Grace" setting you specified in settings.
    [ENHANCED] Allow more special characters for file descriptions.
    • ~!@#$%^%&*()_-+={}[]|<>,.?/:;"'
    [ENHANCED] Generated Passwords
    • They now won't contain easilly confused characters/numbers such as Il1|, 0O, etc.
    • Added a button to generate a strong 15 character password when changing passwords within your profile page and creating account from the login page.