PHP Photo Gallery

Organize photos in categories with Beamtic's free Photo Gallery.

PHP photo gallery was created because we found that existing solutions lacked features, were complicated to implement, and some not even providing a way to upload images to the gallery or create new categories.

This gallery will always be free. If you paid money for it, you should try to get a refund.

Uses PHP's Build-in Capabilities

In an attempt to keep our PHP Gallery simple we are using PHP's build-in capabilities to handle files and directories in a logical manner. Creating a new category is as simple as creating a directory, and organizing files in categories, is as simple as placing them in directories.

The idea is to use simple web technologies to create a highly functional and useful, free, open-source photo gallery.

Password Protected Administration

The gallery comes with a administration section, allowing you to upload and delete images, as well as create new categories.

We are using PHP's build-in session functions for logging in. The actual password is not stored. Instead, a hash string is created from the password, and kept in settings.php which increases security of the administration.

Actively Maintained

Beamtic PHP Gallery is activly maintained, and features added as needed. Some of the planned features are listed below:

  1. A way to translate strings from the admin section, and create new translation files.
  2. Small improvements to layout.
  3. A way to write descriptions for each photo.
  4. A way to upload multiple files.


The gallery requires gd library to work with uploaded images and create thumbnails to speed up loading of the category pages and image viewer. In addition, the installation folder will needs to be open for writing. (I.e. chmod 775)

You may also need to adjust the upload_max_filesize and post_max_size settings in php.ini, but some hosts will already handle larger files. Generally it is recommended to resize photos before uploading, so they will not become to large.


To install the photo gallery, simply extract the contents of gallery.7z, and move the contents to your server (I.e.: /var/www/mysite/gallery/)

Create new categories by creating the directories in the gallery folder (I.e.: gallery/mycategory) – in the future you will be able to create new directories (categories) directly from the gallery after logging in, but currently you have to manually create the directories.

If you need to configure permissions, you may do so with chown & chmod. For Apache in linux, simply do something like:

sudo chown -R www-data:www-data /var/www/mysite/gallery/

sudo chmod -R 775 /var/www/mysite/gallery/

If you need to install the GD extension, try something like:

sudo apt install php7.0-gd

Or these alternatives, depending on your version:

sudo apt install php7.4-gd

sudo apt install php8.0-gd