Webes képtár Apache::Gallery-vel

Az Apache::Gallery az általam ismert képgaléria-motorok közül az egyik legjobb. Perl modulként érhető el, képes CGI-ként ill. a mod_perl-en keresztül is futni. Egy adott mappába például FTP-n keresztül feltöltött kép- és hanganyagokról valósidőben készíti el első megtekintéskor az index, ill. a különféle nagyobb felbontású előnézeti képeket, majd ezeket gyorstárban raktározza a gyorsabb kiszolgálás végett. A galéria küllemét HTML sablonokon keresztül módosíthatjuk, gyárilag két layout érkezik. Az egyes képekhez, képmappákhoz feliratokat, megjegyzéseket fűzhetünk. Ezen funkcióhoz az érintett állomány nevével megegyező, .comment kiterjesztésű fájlt kell létrehoznunk a hozzá képest szülő könyvtárban. A fájl elsősorában a felvezető TITLE: jelölőt követően az a string áll, amit az oldal címeként szeretnénk viszontlátni, valamennyi további tartalom pedig (sablontól függően) a megjegyzésdobozban fog helyet foglalni.

A modul telepítése

Az Apache::Gallery telepítése végtelenül egyszerű. Működéséhez Perl 5, Apache (1.3-as verzió javallott), mod_perl bővítmény, Imlib2 kódtár és néhány feljesztői csomagok, Perl modulok szükségesek. A teljes lista megtalálható a forráskódhoz mellékelt INSTALL instrukciókban. Debian (Ubuntu, MEPIS stb.) környezetben APT forrásból egyszerűen telepíthető az apt-get install libapache-gallery-perl utasítás kiadásával. FreeBSD alatt a www/p5-Apache-Gallery portból telepíthető. Mindkét módozat az alkalmazás többnyire összes függőségét magával rántja.

Webszerver konfiguráció

A csomagok installációját követően a vonatkozó VirtualHost bejegyzéshez szúrjuk hozzá a következő kódblokkot, ami az Apache::Gallery működését szabályozza.


PerlSetVar GalleryTemplateDir '/domain/photos/.templates'
PerlSetVar GalleryInfo 'Picture Taken => DateTimeOriginal
PerlSetVar GallerySizes '640 1024 1600'
PerlSetVar GalleryThumbnailSize '100x75'
Alias /icons/gallery/ "/domain/photos/.icons/"
<Location />
    SetHandler  perl-script
    PerlHandler  Apache::Gallery
</Location>

A GalleryTemplateDir direktívával a sablonfájlok helyét adjuk meg. Az Apache::Gallery mindent megjelenít a DocumentRoot alatt, így praktikus lehet ezen könyvtárt azon kivülre helyezni, vagy átnevezni, hogy ponttal kezdődjék, mert azok nem látszódnak a képtárban. A többi opcionális argumentumon túl érdemes a fenti aliast, vagy ahhoz hasonlót beállítani, ugyanis a motor az /icons/gallery alatt keresi valamennyi sablonból vagy stíluslapból hivatkozott képet. Mindezek végeztével ellenőrízzük le az Apache konfigfájl szintaktikai helyességét (apachectl configtest), majd indítsuk újra a webszervert. Demóként megtekinthető a személyes fotótáram.

Az Apache::Gallery természetesen sebességében nem veszi fel a versenyt egy statikus galériával.