Jirafeau – Share a file in a simple way

Jirafeau logoOne of the most used online services are those allowing you to upload large files and share them with someone. May services exists, either dedicated like wesendit, etc… or with a larger set of features, like Dropbox, allowing you to sync your files accross devices for example.


Each of them have similar alternatives, some very advanced and robust like Pydio, Owncloud, or Seafile and some with unique features like OnionShare that goes through TOR, ShareFest that is a web based  P2P sharing service or Droopy, one of the lighest and simplest one.

But many remember Jyraphe, a popular file sharing web application, very simple with good enough features. However this project has not been updated for years and this is where Jirafeau enters.

Jirafeau is a fork of Jyraphe with many new features and improvement while still beeing made in the KISS way (Keep it simple, stupid).

Jirafeau main page upload file

Easy to install and with no database, Jirafeau allows you to upload large files (Thank you HTML5) and will provide you a unique link. With progression stats (Speed, percentage and remaining upload time), password protection (Upload or Download), Time limitation, self-destruction after reading and file deduplication, Jirafeau is a powerful yet simple service to share your files.

Jirafeau upload stats

With Jirafeau, you can also preview content in your browser, shorten URLs and even encrypt the data.

Jirafeau Password protected

Great service, that you can use and try on jirafeau.net. Or follow the below tutorial to install it on your server. (Assuming you are on Ubuntu / Debian style of distribution)



The installation is pretty straightforward. Here is what you need to do:

1) Install Git

If you don’t have git installed, simply run as root (or with sudo):

apt-get install git-core
2) Clone their Git repository

Still in root, run:

cd /var/www
git clone https://gitlab.com/mojo42/Jirafeau.git


3) Change ownership of the Jirafeau folder to your Apache user (www-data)

To avoid permission issues, run:

chown -R www-data:www-data /var/www/Jirafeau


4) Create a dedicated virtualhost

To get your URL “pretty” like file.domain.tld, I recommend you to set up a dedicated virtualhost. You could also at the same time, force HTTPS and restrict access to the var folder created by Jirafeau to ensure no one can get access except through Jirafeau.

Here is mine that you could reuse.

To do so, you will need:

1) Create a A redirection in your DNS server/registrar with something like file.domain.tld to your IP

2) Have SSL certificate ready. If not you can read this tutorial. (Optional)

3) Create your virtualhost as following:

In /etc/apache2/sites-enabled/, create a file called ninja (or reuse one of yours), In root:

nano /etc/apache2/sites-enabled/jirafeau

and paste the following content:

<VirtualHost *:80>
        ServerAdmin webmaster@domain.tld
        ServerName file.domain.tld
        Redirect / https://file.domain.tld

<IfModule mod_ssl.c>
<VirtualHost *:443>
        SSLEngine on
        SSLCertificateFile /etc/ssl/certs/myblog.pem
        SSLCertificateKeyFile /etc/ssl/private/myblog.key

        ServerAdmin webmaster@domain.tld
        ServerName file.domain.tld

        DocumentRoot /var/www/Jirafeau

        <Directory /var/www/Jirafeau>
        AllowOverride All

        <Directory /var/www/Jirafeau/var-xxxxxxxxx" >
            Order Deny,Allow
            Deny from all


Adapt the content (Servername, webmaster email, SSL certificate, directory,…). If you don’t want to use SSL, you will need to tweak a bit this virtualhost.

Also make sure to replace the var folder by the correct one.

When done, save the file (CTRL+X then Yes) and reload apache: (In root)

/etc/init.d/apache2 reload


5) Launch the web installer

Simply go to http://file.domain.tld to access the web installer.

You will need to select:

– Language

– Admin Password

– Base Address (The URL where Jirafeau is available, like file.domain.tld)

– Where to store all the files.

And that’s it! Jirafeau should be now perfectly working.


This is a pretty basic configuration but you can tweak most of the settings in lib/config.original.php (Theme, upload size, upload password, etc…)

I recommend you to have a look to Jirafeau’s wiki for more info.


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


Add a comment