Skip to main content

OpenSource image hosting script – Chevereto

chevereto logo

As written in a previous article about the OpenSource image hosting scripts for your own server, Chevereto is probably the most popular of image hosting script.

It allows you to create a fancy yet simple image hosting website on your own server. Although their new release, the V3 is a commercial version, their previous 2.x series are still available on github and work like a charm.

Written in PHP with JavaScript, Chevereto will also required a MySQL Database.

Chevereto includes some interesting features such as:

– User accounts

– Drag N Drop upload

– Multi upload

– Custom short URLs

– Themes

– Content manager to allow users to manage all the uploaded images

– Multi languages

and many more.


Chevereto screenshot


Definitely worth a try.!

And here is how to install Chevereto on your own server.



I assume you already have a Linux Apache MySQL PHP server. If this is not the case, please read my previous tutorial on how to install a LAMP server.

1) Clone the latest version using git, directly in your /var/www

If you don’t have git, simply run: (Still as root)

and change the owner of the folder to the apache user:

2) Install the dependancies

– You will need php curl and php gd, in root, simply run:

– You will need the mod_rewrite

then restart apache service to update the configuration:

3) Configure chevereto with your MySQL database

If you don’t have a MySQL database, you can simply use PHPMyAdmin to create one.

To configure chevereto, you will need modify the includes/config.php file

Inside this master config file, you can set your language (EN, FR, etc…) but also your site name, private mode, storage folders and many more…

But most important for the first use will be the database configuration:

You will need to modify the lines:

with the information of your MySQL.

When done, simply save (CTRL +X).

4) Change the default string changeme to anything you want in includes/definitions.php

and change the string changeme in:

5) Go to http://YourIP/Chevereto/chevereto

If no problem, you should be able to upload your files right-away.

Next steps will be to create a virtualhost to:

1) Use SSL to connect to the service,

2) Make the URL more userfriendly, like pic.domain.tld

3) Increase the Max upload value (Default from PHP is 2mb)


Virtualhost configuration

What you will need:

1) Create a A redirection in your DNS server/registrar with pic.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 chevereto (In root):

and paste the following content:

Adapt the content (Servername, webmaster, SSL certificate and directory, and PHPvalue set at 20mb).

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

You should now be all set and ready to use chevereto!


If you want to recommend some good image hosting script, please send me a mail or simply post a comment!

Host a server on a dynamic IP with an OVH (and similar) domain name

Selfhosting is not accessible to everyone, although several projects such as YunoHost and Cozycloud that are drastically simplifying how to install, configure and manage your server with pre-configured applications (Mails, Jabber, blog, torrent, calendar, file sharing, etc…), it’s still require few additional configuration from your DNS. And it can be quite annoying to run your own server@home when you have a dynamic IP.

It’s actually my case…..well only since this monday…I’ve been able to upgrade my home connection to 100M/100M. Although I was at 100M/40M before with a static IP, now they “cannot” keep a static IP except if I’m willing to get their professional package (The double!). Technically there is no reason for them not to provide me a static IP…but commercially I can understand they want to protect their premium offer for pro…

So I had to figure it out…. and well it’s quite easy to run a server on a dynamic IP.

I bought my domain name with OVH, and they have a dedicated service call DynHost, accepting to update redirections using an external software. But many other providers have this option (DynDNS and co).

Basically, you need a script or so, that will check every xx minutes for the change of your public IP and immediately update your domain name settings.

I’ve used a simple application called DDclient.

DDclient, written in Perl, is a dedicated client used to update dynamic DNS entries. It was made for accounts on ‘Dynamic DNS Network Services’, the previously-free DNS service (DynDNS), but since their business model’s change, DDclient team have integrated several others services by implementing new protocols.

Easy to install and configure, DDclient suits me well.


1) Install ddclient from your distro’s repository

In root (or with sudo), type:

You will need to answer several questions. But no worry, you are able to directly update the conf file later (Even better!).

You will have questions such as:

– Selecting your Dynamic DNS Service Provider (For auto config). If not listed, simply select “other”, in that case, you will need to enter the Dynamic DNS Server ( in my case) and the protocol (dyndns2 in my case)

– Username (From your registrar Dynamic DNS service)

– Password

– DynDNS fully qualified domain name (the domain name you want to update, in my case), make sure it’s in line with your registrar Dyn DNS service.

– Run ddclient on PPP connect, select NO in that case, as you want to have it run in daemon instead.

– Interval between ddclient runs (Like 5mn for example)

2) Double confirm the configuration

(Or start from mine)

In some cases (behind some router,…) it will takes your local network IP…of course, it won’t work in that case. So the best is to double check this.

Modify /etc/ddclient.conf (Still in root):

and if you have something like

while eth0 is only giving local network IP, it won’t work…Simply replace the line use=xxx by:

This will directly check your IP with’s website.

Here is my full ddclient.conf file for your reference:

Simply adapt it for your own registrar.

3) Restart the service and check if it works

To check the new configuration, no need to wait 5mn or whatever number you have set. Simply restart the service and read the log:

You should get something like:

then you can double check this in your registrar admin panel (Immediate update).

You should now be good to host your own server on a dynamic IP!


If you want to know more about DDclient, I suggest you reading their official wiki.

If DDclient is not your taste, there are many others script/apps to update your domain name IP. One of the most famous one is certainly, as shown in the official OVH support page on DynDNS.

OpenSource image hosting scripts for your own server

Following my review on some popular RSS Readers, I’ve decided to do the same for image hosting services, similar to TinyPic, ImageShack, etc… type, but to be installed on your own server.

A lot of public websites exist, but you don’t really know what they do with your pictures and personal info (IP, websites linked to, content of the picture, day and hours posted, etc…). If you got your own server, installing a similar service is usually very easy and some of them have very good additional features as you will read below.

Here is the current list I found. I will obviously try and write articles on them as soon as I can!  \o/, (under GPL v3), drag & drop type with encryption from the web browser before the upload, no log, firefox extension for quick upload, command line upload feature, etc…

chevereto, nice design, drag&drop upload or from URL, explore and search features, responsive design, with social media sharings, and many more. Once my favourite one, but now oriented for professionals with licence fee. (The old version is still available tho and an article to help you install it is now available!!)

MediaCrush, easy to use (Ctrl+v to upload a link or picture), few options, …

Pix, from the french association Toile-libre, very simple one with limited options

Jirafeau, a fork of the old Jyraphe, still KISS oriented (Keep It Simple Stupid). Not only for pictures but any type of file.

Lutim, encrypted at server side, URL upload, delete at first view, and many more options,…

Not many….I’ll keep updating this article when I found new ones. If you know some interesting others opensource image hosting script, please share in the comments section!