Skip to main content

PhotoShow, responsive and powerful web gallery

I have previously presented several web galleries such as the popular Piwigo but also Lychee, quite simple one. And this is where Boomboum introduced me an interesting project called PhotoShow.

PhotoShow - Web gallery photo

PhotoShow is a free and open source (under GPL licence) web gallery application to install on your own server. Easy to use and install, it does not require a database (Filesystem based). While having usual drag n drop to upload pictures, or user management with different access rights, comments and RSS feeds, PhotoShow differentiate itself with a responsive design, Google PhotoSpheres support.

A demo is available here.

Interested to give it a try, here is how to install PhotoShow on your server.



1) Install the libgd for PHP

Simple run (as root)

2) Clone the git repository into your /var/www

3) Link PhotoShow to your photo and thumbnails directories (Or create new one in your /home/user for example)

Simply modify the config.php file.

And indicate the full path of your photos. Make sure the web server have write access.

Save (CTRL +X, then Y)

And you’re good to access your web gallery and create your admin account.

PhotoShow - Create account

You should now see your photos or should be able to upload your pictures there.

As simple as that!

If you are facing any issues, make sure to raise a ticket on their github issue tracker.

Lychee, simple and selfhosted web photo management

One of the first thing I’ve been self hosting on my own server was a web photo gallery to let my family, friends, etc… follow some moment of my life, in photo. Facebook and co have never been my taste, as it is clear how they use our data and sell our privacy.

So I wanted to have my own gallery on my own server and at that time, I used Piwigo (I’ve already wrote an article about it) and I keep using it. But if Piwigo does not suit your needs (Want some simpler, etc..) Lychee might be your taste!

Lychee is a free and open source photo management app, to be run on your server. Easy to install (Only require LAMP), it will let you upload, manage and share your pictures in an easy manner.

Lychee main screen

It supports the XIF and IPTC Metadata and allow you to upload pictures from your computer, but also directly an URL or even from a Dropbox account.

You can have a look to their demo to have a first impression.

Interested to use? Let’s see how to install it!



You will need PHP and MySQL installed on top of a web server (Apache and co). If you don’t have, just check this tutorial.

1) Install the requisites

Lynchee requires the PHP extension exif, gd, json, mbstring, mysql, zip. To install them, simply run: (In root or with sudo)

2) Clone their latest release into your /var/www folder

Still in root, run:

3) Change the owner of the folder to the Web server user (www-data)

4) Go to the web installer and follow the steps

http://YourIP/Lychee should point to the web installer

You will need to set few things:

– Database credentials

If you use MySQL, I can use PHPMyAdmin to create a dedicated database for Lychee.

– User account and password

When done, you will have a fully working Lychee photo management app, ready to upload all your pictures/photos and share them.

If like me, you wish to extend the upload size (2mb per default with PHP) and want to be able to upload big files in a batch, you will need to change couple of php.ini values or create a dedicated virtualhost with those values in it.

As I want to be able to access to my gallery using a dedicated domain name (Or sub domain) and force the SSL connection, the vhost solution is the must.


Virtualhost configuration

What you will need:

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

and paste the following content:

Adapt the content (Servername, webmaster email, SSL certificate, directory and PHP Values).

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

Lychee should now be accessible through lyc.domain.tld, forcing HTTPS connection and allowing you to upload bigger file size.

Web photo gallery application on your server – Piwigo tutorial you are looking for making a fancy yet simple Web photo gallery to display your weddings pictures, share your last trip photos with your family or as a demo of your work, a comparison of photo galleries to be installed on a server to published your albums can be actually found on Wikipedia.

My favorite one is Piwigo, it’s an open source (Under GPL licence) photo software for the web, written in PHP and requiring MySQL.

The community and project are very active and several plugins are available to make the full experience even better.

To give you an idea you can browse their demo.

Let’s see how to install it on a working server with PHP and MySQL installed. (If not done yet, you can refer to my previous guide on how to install a LAMP server)


To separate your web gallery, you should create a dedicated folder. In root user (su), type:

and then download the latest netinstall apps:

Now you need to change the owner of this folder to ensure apache user has write access and provide sufficient privileges. In root, type:

And then simply go to http://yourIP/mygallery/piwigo-netinstall.php
to continue the installation. You will need a MySQL database to proceed the installation. If you don’t have one, I suggest you to use PHPMyAdmin to do so and follow the example of configuration for a database.

Virtualhost configuration

If like me, you prefer to have a sub-domain (Or a different domain name than your principle one) pointing directly to your Piwigo instance, you will need to create a dedicated Virtualhost file.

The fastest way might be to reuse some of your existing Vhost file by duplicating it and modifying accordingly to your needs.

Or you can reuse mine and adapt it.

In root, type:

and here is how mine looks like:

Once modified, save it (CTRL+X, then Yes) and reload your apache configuration:

(In root)

You should now have a working web gallery with its own subdomain.

If you use another web photo gallery, which one are you using and why?