ProjectSend, easy share files

Nowadays, many email providers have increased their maximum attachment file size (not 10Mb anymore). Yet, you may have bigger files (or crappy email providers). For those cases, ProjectSend can help!

ProjectSend is a modern and simple self-hosted application that let you upload files and assign them to specific users or simply make them public.

It’s basically an open-source alternative to wetransfer, yousendit and all those similar websites. If you don’t want to install a complex Pydio solution or Owncloud, ProjectSend is a robust solution.

You can manage users, assign files to specific users, forbid some extensions, customized your email templates (For upload notification for example), detailed log of actions,… You will also be able to get some statistics and check inactive users as well.

Written in PHP, it can be installed on a dedicated server or VPS, but also on shared hosting. You will also need a MySQL database.

Here is a demo for you to try it out.


It took me few minutes to install it and I’m quite satisfied with design, performance and features.

So let’s see how to install ProjectSend on your server (Debian in my case, but Ubuntu should be pretty similar)



First, you will need to have a LAMP server. (Apache, MySQL and PHP). If it is not the case, you can check my recent tutorial with PHP7 and mariaDB for Debian 9 or Ubuntu 16.10.If you are on a shared host, you can simply download their archive and upload it to your FTP. But I will detail this part.

So, on your server, follow those steps:


1) Install git

You will first need git, to clone their latest repo. In root (or with sudo), run:

apt-get install git


2) Clone ProjectSend’s repo
cd /var/www
git clone

It should be pretty fast.


3) Edit the configuration file

You will first need to create a database with a dedicated user. The easiest way is probably with PHPMyAdmin if you don’t want to use SQL commands (I don’t want ha). Once done, on your server run:

cd ProjectSend
mv includes/sys.config.sample.php includes/sys.config.php
nano includes/sys.config.php

and configure the database part. (hostname, database name, user, password)


4) Assign the right permission
chown -R www-data:www-data /var/www/ProjectSend


and you should now be to access to your ProjectSend instance through http://YourIP/ProjectSend.

It will redirect you to the install folder and let you configure few things (Site name, URL, language,…).

That’s it! Simple isn’t it.


If you face issues, feel free to comment, or check their github page.


Loves to discover web-based apps to install on his own server@home and write articles about it


Add a comment


The requested URL was not found on this server.
Written on Mon, 02 Dec 2019 09:34:32 by Nitin Tamhankar