Perl telepítése

1. Töltsük le a http://www.activestate.com/store/activeperl/download oldalról a Windows (x86) MSI verziót (ActivePerl-5.10.0.1002-MSWin32-x86-283697.msi). Az email címet meg egyebet nem kell megadni (!!!) csak kattints a “Continue” gombra.

2. Indítsuk el a setup progit, és nyomkodjuk bőszen a next-eket! A harmadik panelon van a Location beállítás, amit nagyon fontos, hogy C:\usr -re állítsunk. Így elérhetjük, hogy a linux/unix renszereken megszokott perl elérési útvonalat /usr/bin/perl megtartsuk, ne kelljen átírni scriptjeinket.

3. Az Add Perl to the PATH environment variable legyen bejelölve, mert így a perl futtatható állományait a windows a helyükön is el tudja indítani. A Create Perl file extension association is maradjon.

4.Szerkesszük az Apache httpd.conf konfig filet! Keressük meg az alábbi sort és adjuk hozzá az ExecCGI paramétert! Vhost-ok használata esetén nyilván a vhost-oknál kell megadni.

Options Indexes FollowSymLinks
Options Indexes FollowSymLinks ExecCGI

5. Ha szeretnénk, hogy ne csak az apache könyvtár/cgi-bin alatt lehessen futtatni scripteket, a következő sor elől töröljük a #-et.

#AddHandler cgi-script .cgi

A futtatás helyét a Script Alias segítségével adhatjuk meg így (értsd: DOC_ROOT/cgi-bin/):

ScriptAlias /cgi-bin/ "C:/[apache utvonal]/cgi-bin/"

6. Indítsuk újra az Apache-ot! Ha nem indul újra, ellenőrizzük az átírt httpd.conf-ot!
7. Készen is vagyunk! Próbáljuk ki! Készítsünk egy teszt.cgi fájlt a következő tartalommal és mentsük a document_root/cgi-bin/ -be.

#!/usr/bin/perl
print "Content-type:text/htmlnn";
print "Sikerült!";

A böngészőnkben próbáljuk ki az elkészített miniszkriptünket’: http://[domain]/cgi-bin/teszt.cgi

Ha a sikerült szöveget olvassuk, működik, ha 500-as hibát kapunk, az apache error logjában tudunk utána nézni a probléma forrásának.

Apache, php, perl |

There are 6 Comments


  1. UPDATE:

    Ha az AddHandler cgi-script .cgi -hez hozzádobjuk a .pl kiterjesztést, akkor a perl scriptek is a cgi-ként lesznek kezelve. Praktikus..


  2. Szia!

    A segítségedet szeretném kérni. Van egy drupal alapú honlapom, amihez szeretnék egy Perl alapú családfa programot rendelni. A szolgáltatóm
    - backups
    - cgi-bin
    - errors
    - htdocs
    - logs
    - phptmp
    struktúrát adott, ahol természetesen a htdocs a gyökérkönyvtáram.
    A családfaprogramot a htdocs/csaladfa/ könyvtárban helyeztem el. Az ftree.cgi így a 0:/htdocs/csaladfa/cgi/ könyvtárban található.
    A http://sajatdomain.hu/csaladfa/cgi/ftree.cgi -re 403-as hibaüzenetet ad: Forbidden!
    Hogyan tudnám beállítani úgy , hogy működjön?

    A Perl alapú program telepítésénél azt írja:
    1.Tömörítsük ki és töltsük fel a webszolgáltatóhoz a fájlokat (a könyvtárhierarchiát és a jogosultságokat tartsuk meg).
    2.Tetszés szerint módosítsuk a config/PerlSettingsImporter.pm fájlt. Itt állíthatjuk be például a családfa karbatartó email címét, weboldalát és az alapértelmezett nyelvet. Ha a családfa adatait adatbázisban tároljuk, akkor az adatbázis elérhetőségeit is itt kell megadni.

    Nagyon megköszönném ha segítenél!

    ggabor


  3. Feltelepítetted a perlt? Apache configban be van állítva ami kell? Működik más programmal?
    Próbáld ki a teszt.cgi-s mókát ami a tutorialom végén van.


  4. Külön nem telepítettem perlt, de nem is tudnék, mert nem én üzemeltetem a servert. De mivel a drupal fut rajta, amiben (azt hiszem) vannak perlben írt dolgok is és az fut, úgy hiszem az megy is.
    A teszt.cgi-t kipróbáltam, de sem úgy, hogy a cgi-bin könyvtárban helyeztem el, sem úgy, hogy htocs/csaladfa/cgi/teszt.cgi nem működik. Első esetben azt írja: nem találja a filet, a második esetben pedigg 403-as hibaüzenet és Forbidden!


  5. Megnéztem a szolgáltatómnál, a Hibalapok között a 403-asra azt írja: tiltott. Elképzelhető hogy az a gond, nincs engedélyezve perl script futtatása?


  6. Csak akkor azt nem értem, miért ad a könyvtárstruktúrában cgi-bin könyvtárat. Ill. ha a htdocs a gyökérkönyvtáram, akkor hogyan tudom elérni a cgi-bin/ könyvtárat?

Leave a Comment

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.

Keresés

Témák

Linkek