Description  |  News  |  Sample Sites  |  Contact 
 SourceForge  |  Dev Page  |  Downloads


Summary | What is it? | Features | License


RIG is a web-based JPEG and movie album viewer, especially useful for digital camera albums; provides automatic image resizing, preview & thumbnail caching, user authentication; composed of a PHP web interface and a C++ thumbnail engine. Storage relies on file-system rather than database.

RIG has been primarily prototyped in the soothing environment of Pennsylvania ;-)

What is RIG?

RIG (a.k.a. the Ralf Image Gallery) is a web-based image album viewer.
The main application of RIG is a viewer for digital camera albums; as such it offers specific functionalities like automatic image resizing and handling of dated album names.

RIG is composed of two parts:

The images are read directly from the local file system. The directories are interpreted as albums, each album containing an arbitrary number of images or sub-albums. Currently only JPEG files are supported as this is the most common format produced by digital cameras. Most modern cameras can also generate movie files: under GNU/Linux systems, these movie files can be handled if avifile library is installed on the system.

RIG currently works using PHP 4 with Apache. It is mainly developed under GNU/Linux (Debian/Apache 1.3/PHP 4) but also tested under Win32/Apache/PHP 4 or Win32/IIS 5/PHP 4. It is expected that the scripts will work with other web servers supporting PHP or at least require only a minimal set of modifications.

RIG thumbnail, the resizing application, is a C++ application that compiles with GCC (for GNU/Linux) or Visual Studio 6 (Win32) or Visual Studio .Net (Win32). It is expected to be portable on other platforms using a reasonable C++-compatible compiler. The thumbnail application has been designed with speed in mind yet code maintenance has not been sacrificed for speed. 1600x1200 images are resized in less than 1 second on a not-so-high end Pentium III @ 1Ghz computer (usually in less time than is needed for the resulting image to be downloaded by the client web browser) or in 2~3 seconds on a K6-II @ 350 MHz (i.e. a low end DSL server).

RIG maintains a cache of resized images and a cache of generated HTML album pages in order to produce them once. The web interface provides an administration page that can be used to pre-compute all the resized images. The administrator can also hide/show images or albums at will.

The web interface is composed of a small set of HTML and PHP modular scripts, which are expected to be easy to understand and modify even for a beginner or a non-programmer. All UI strings (for the web interface) are isolated for internationalization purposes; default translations in English, French, Spanish and Japanese are provided. Configuration files provide support for site-wide settings vs. album-wide settings. It is thus possible to have different albums (with different configuration files) served by the same server yet sharing the same PHP code base.


In 2000, I wanted to update the photo album on my web site. I was previously using statically generated web pages with one reduced version of the pictures. I looked around and quickly found IDS first and Gallery later but they didn't exactly do what I wanted. IDS was really really slow on my server and Gallery doesn't just use the plain file system structure with a local network upload of albums, which is a requirement for me.

So here's a quick review of RIG's features:

This list may be incomplete. RIG permanently evolves.

If you want information about the future of RIG, you can:


What is the RIG License?

RIG 0.6.2 used to have a modified version of the Artistic License.
Since RIG 0.6.3+, the license has been reverted to the pure Artistic License to be an Open Source license. *grin*

You can consult the license here: RIG License.

I am not a lawyer and I find licenses generally obscure to read, so what it all means is:

Starting with version 0.7, RIG is licensed under the GNU General Public License.


June 24, 2006  

Added final release 1.0 on Sourceforge. Please upgrade all previous versions. This one fixes the security vulnerability.

June 24, 2006  

A security flaw has been disclosed 3 days ago that allows an attacker to perform PHP code injection so all RIG versions between 0.6.5 and 0.7.5 are deemed affected.

Unfortunately so-called "security researcher" David "Aesthetico" Vieira-Kurz failed to contact me prior to exposing the vulnerability and consequently RIG servers' of mine and some friends were hacked into. I had to spend a lot of time taking the server offline to check it and make sure it was clean, time that I could have used to patch RIG instead. Further investigation just shows that he actually failed to contact me contrary to what he claims in the advisory. Voluntarily disclosing a vulnerability that he knew would jeopardize personal servers is highly unethical and makes me wonder of the intentions of Aesthetico and his one-person operation at http://majorsecurity.de/. Full disclosure is something that should be taken very seriously and should only be done by responsible people: favoring personal fame and satisfaction over actual security is not an attitude I can condone.

The immediate consequence is that all distribution archives have been deleted. If you want to grab a version, go to sourceforce. The final release 1.0 has a fix for this one security flaw. There might be others and I will not audit the code, so use it at your own risk (I will however gladly integrate any security patches that are sent to me.)

The other long-term consequence is that I am officially stopping working on this project. It won't evolve. I've been burned by PHP one too many time and it's time web developers start realizing there are better alternatives to PHP nowaday. PHP was a fun tool to start learning web dev but experience shows that it is a rather innapropriate environment.

April 12, 2006  

Added 0.7.4 on Sourceforge.

December 12, 2005  

Added 0.7.3 on Sourceforge.

November 26, 2005  

Added 0.7.2 on Sourceforge.

October 8, 2005  

Added 0.7.1 on Sourceforge.

September 25, 2005  

Added 0.7 on Sourceforge.

July 5, 2004  

Added on Sourceforge.

July 16, 2004  

Moved back to unstable the download section.

July 5, 2004  

Moved to stable. Adding to unstable (bug fixes) in the download section.

June 17, 2004  

Updated this page.

January 30, 2004  

Added the RIG development page to the feature list section.

December 7, 2003  

Adding version in download section..

August 22, 2003  

Adding versions, and in thedownload section..

June 23, 2003  

Updated this page.

June 15, 2003  

Uploaded new version with full Japanese translation!
Thanks Tatsuo!

March 16, 2003  

Added a list of RIG's features in the description above.

March 8, 2003  

Experimental language translation page started. Preparations for album uploads. Not on CVS yet.
Examining GeekLog and Drupal as an alternative for this site.

February 23, 2003  

Experimental image administration page started. Not on CVS yet.

February 22, 2003  

Adding password support to login. Adding gray color theme.
Updated file archives on SourceForge.

January 20, 2003  

Finally committed all RIG 0.6.3 diffs to SourceForge.

January 19, 2003  

Adding features to RIG 0.6.3: copyright display, albums/images count.
Oh and I've decided to dump the experimental 0.6.3-exp release and merge it into the main branch.

October 12, 2002  

Adding features to RIG 0.6.2: jhead support, error reporting, fixes.

July 22, 2002  

Made a home page for RIG.

July 8, 2002  

Started working on RIG 0.6.3-exp.

June 2002  

Created the rig-thumbnail project on SourceForge


Sample Sites

Here are some sample image galleries:

Album: Ralf's Public Image Gallery
Owner: Ralf

Version: N/A
System: N/A

Status: Not Operational. Closed.

SourceForge Logo

If you want to have your own RIG-based image gallery listed here, please drop me an email.



RIG Image Gallery on SourceForge, code name rig-thumbnail:


  SourceForge Logo



Stable | Testing/Unstable | Old Archives

Aug. 17, 2003

Version is the most recent stable revision.

A bunch of features have been introduced since version more prefs, more themes, video support, image borders, vertical album layout, Japanese translation, album description files, PHP 4.3.2 support, crypted password, and of course many fixes!

The installation document has been revisited is can now be considered a must-read for new comers!

[143 kB]
Nov. 4, 2002

A bunch of features have been introduced since version, although not as much as expected. Most of the new features are visible, yet not dramatic: color themes, multiple languages user interface, better error reporting, jhead display.

It has been running on my server for around 4 months. It is considered well tested and reliable.
The documentation included in this archive is rather limited.

[82 kB]
Nov. 30, 2001

The "initial" revision hosted on sourceforge. This version is stable and usable, yet more features are expected to be added to the project before it can be labeled 1.0, such as album/image renaming or reorganization, authentication and upload of new images using the web interface.

This version has been available since November 2001; it has been up and running since then on my public album server as well as some other friends' servers. The documentation included in this archive is rather limited.

[60 kB]
Development (a.k.a. testing and/or unstable)
July 5, 2004

This is an intermediary dev release, with some minor but useful fixes.

Although considered non-stable (low testing), this release seems to perform very well.

[172 kB]
Dec. 7, 2003

This version has been under testing for the past 6 months on my servers.
It performed very well and has been promoted to stable. Unfortunately I found some rather annoying bugs (which I fixed in CVS already, as of 20040716), so I'm putting this back in unstable.

This version fixes a number of annoying bugs from the, especially the broken image resize popup. So if you experienced this bug, please update!

[168 kB]
Aug. 21, 2003

This is an intermediary dev release, with some minor but useful features: more preferences, location.php and htdocs have been updated, move dadmin sources out of the normal sources, code has been updated to comply with PHP 4.3.2 installation defaults, and finally has been tested with IIS 5 and PHP 4.3.2 on a Windows box.

Although considered non-stable (low testing and new features to be added soon), this release seems to perform very well.

[147 kB]
Aug. 13, 2003

This version introduces some new (minor but useful) features. It seems pretty solid and is a good candidate to become 0.6.4-stable.

New features include: albums has grid vs vertical layout, displays date of modification, new "ignore lists" for albums/images (patterns of files to be ignored), introduced support for videos, fixed broken album frame for Mozilla 1.0, support in-album "file_info.diz" or "descript.ion" files.

[127 kB]
Jun. 15, 2003

This version features completly translated Japanese strings.
Also some minor fixes & cleanup.

This is mostly untested but few problems are to be expected since the modifications were fairly limited.

[102 kB]
Mar. 16, 2003

This version introduces experimental features, like the translate-language web interface, the separate administration of albums and images. Also several fixes and more prefs.

This is mostly untested but some people prefer to live dangerously so they need unstable packages :-)

[102 kB]
Feb. 22, 2003

This version introduces minor features, like a gray color theme. More important, it introduces user/passwords in the login process (plain text, crypt and MD5 are supported).

This is mostly untested but few problems are to be expected since the modifications were fairly limited.

[96 kB]
Jan. 20, 2003

This version introduces some rewriting of the code, and some features, like display of the number of images/albums and copyrights. It also separates album options from the album cache.

Ran on my server with no problem for a little while (a month or so), before I upgraded yet again ;-).

[92 kB]
Jan. 18, 2003

This version is basically the same as, but with an additional URL-rewrite feature.
There's a known bug in this feature (the cookie management doesn't use the rewritten URL correctly).

Currently only available via SourceForge CVS, using checkout tag is "tag_2003-01-18_v0624".

  [Anonymous CVS Access]
[Browse CVS: tag_2003-01-18_v0624]

Old Archives


rig-0.6.1-011128.tgz [59 kB]
rig-0.6-011125.tgz [59 kB]



RIG is developed and maintained by



Alfray | Powerpulsar | R'alf Home Page
Last Updated: June 26, 2006
Created: July 22, 2002