This page is part of documentation of
C-SaCzech.
It has been created and is maintained by
Jaromφr DoleΦek,
dolecek@ics.muni.cz |
![]() |
Autor: Jaromφr DoleΦek, dolecek@ics.muni.cz
Dokumentace CSßΦku ┌vodnφ strßnka
Postup instalace:
Obvykle je tedy nutno na Unixu CSßΦek zkompilovat ze zdrojov²ch soubor∙.
V ideßlnφm p°φpad∞ staΦφ rozbalit distribuΦnφ soubor
csacek-VERZE.tar.gz, p°ejφt do adresß°e, kter² se tak
vytvo°φ a zadat:
./configure
Skript configure ov∞°uje vlastnosti systΘmu a vygeneruje
p°φslu╣nΘ hlaviΦkovΘ soubory a soubor Makefile. Skript
configure akceptuje n∞kolik parametr∙, kter²mi lze ovlivnit
n∞kterΘ vlasnosti v²slednΘho CSßΦku. Popis v²znamu jednotliv²vh parametr∙ viz
nφ╛e.
Po skonΦenφ configure je t°eba zadat:
make
a poΦkat, a╛ se CSßΦek zkompiluje. V podadresß°i compile/
se vytvo°φ binßrka a pot°ebnΘ symbolickΘ linky na ni. Po dokonΦenφ
kompilace je t°eba cel² obsah adresß°e compile/ p°esunout
do adresß°e na WWW serveru, ve kterΘm mßte ostatnφ CGI skripty tak,
aby se na CSßΦek dalo odkazovat. M∙╛ete ov∞°it funkci CSßΦku
pokusn²m http://www.vas-server.cz/cgi-bin/toASCII/. Pokud
se strßnka zobrazφ v po°ßdku, tato Φßst instalace je hotova.
Pro rozchozenφ whichcode je je╣t∞ nutno nainstalovat jeho ╣ablonu. Jednß se o soubor whichcode_template.html v podadresß°i templates/. Tento soubor je nutno zkopφrovat do adresß°e /www/csacek. Lze pou╛φt i jin² adresß°, pokud jeho jmΘno p°edßte CSßΦku p°i kompilaci p°es parametr --with-templatedir. ⌐ablonu lze umφstit i p°φmo do adresß°e, kde jsou umφst∞ny binßrky CGI CSßΦku - pokud CSßΦek nenalezne ╣ablonu ve v²╣e uvedenΘm adresß°i, pokusφ se jen otev°φt v aktußlnφm adresß°i. V∞t╣ina WWW server∙ nastavuje aktußlnφ adresß° pro spou╣t∞nΘ CGI skripty prßv∞ na adresß°, kde je dan² skript umφst∞n, tak╛e to m∙╛e zafungovat. Je╣t∞ ov∞°it funΦnost testovacφm http://www.vas-server.cz/cgi-bin/whichcode/ a instalace je hotova.
Skript configure je t°eba volat s
parametrem
--with-mutace=FastCGI, jinak by se zkompilovat obyΦejn²
CGI CSßΦek.
Pokud je FastCGI knihovna nainstalovßna na n∞jakΘm nestandardnφm mφst∞
(za "standardnφ" se pova╛uje /usr/lib; na Linuxu je╣t∞
/lib a na BSDi /shlib), je t°eba skriptu
configure p°edat informaci o jejφm umφst∞nφ p°es prom∞nnou
prost°edφ LIBS - je jej t°eba volat takto:
Pokud je knihovna v n∞kterΘm ze "standardnφch" adresß°∙, poΦßteΦnφ LIBS="-L...." nenφ samoz°ejm∞ t°eba psßt.
Dßle instalace postupuje stejn∞ jako u CGI.
Pod Apache 1.1.X nebyl CSßΦek nikdy testovßn v ╛ßdnΘm "opravdovΘm" provozu (alespo≥ ne autorem). M∞l by pod nφm v╣ak fungovat p°inejmen╣φm stejn∞ dob°e jako pod 1.2.X.
Na Apache 1.2.4 byl Apache CSßΦek vyvφjen a probφhala na n∞m v∞t╣ina ·vodnφch test∙. Nasazenφ CSßΦku na Apache °ady 1.2.X by tedy nem∞lo zp∙sobit ╛ßdn² problΘm. Autorovi nejsou znßmy ╛ßdnΘ problΘmy specifickΘ pro CSßΦka na Apache 1.2.X.
V souΦasnosti je CSßΦek p°ednostn∞ odla∩ovßn na Apache 1.3.1 pop°. 1.3.9. Mno╛stvφ spokojen²ch u╛ivatel∙ CSßΦku na Apache °ady 1.3 ukazuje, ╛e i zde je CSßΦek velmi stabilnφ a dobrß volba. CSßΦek je nap°φklad jedin² Φe╣tinß°sk² modul, kter² lze bez ·prav serveru pou╛φvat jako DSO modul.
Postup instalace je podobn² jako v p°φpad∞ mutace
CGI a FastCGI,
jen je skript configure t°eba spustit
s parametrem --with-mutace=Apache:
./configure --with-mutace=Apache
Nastavenφ ostatnφch parametr∙ nenφ u Apache modulu tak
d∙le╛itΘ, proto╛e v∞t╣inu z nich lze nastavit v konfiguraci
WWW serveru, nez nutnosti rekompilace modulu.
P°φkazem make se vytvo°φ soubor mod_csacek.c. Dal╣φ postup se li╣φ podle verze Apache, kter² pou╛φvßte:
Po vlastnφ kompilaci serveru Φi modulu je t°eba je╣t∞ nainstalovat ╣ablonu pro csßΦkovskΘ whichcode. Jednß se o soubor whichcode_template.html, je v adresß°i ../csacek-VERZE/templates/. Defaultn∞ CSßΦek tuto ╣ablonu hledß v adresß°i /www/csacek/. Pokud ji chcete umφstit jinam, jmΘno adresß°e se dß zm∞nit konfiguraΦnφ direktivou csacekTemplateDir. Tφm instalace Apache CSßΦku konΦφ a m∙╛ete si u╛ jen u╛φvat komfortu, kter² vßm CSßΦek nabφzφ ;-)Pokud pou╛φvßte jako operaΦnφ systΘm RedHat Φi odvozen² systΘm a Apache 1.3.X mßte z RPM, je t°eba defaultnφ konfiguraci serveru p°ece jen je╣t∞ mφrn∞ doplnit. Konfigurace z RPM pou╛φvß direktivy ClearModuleList a AddModule proto, aby se zbyteΦn∞ neaktivovaly moduly, kterΘ nejsou pou╛φvßny. Do seznamu AddModule direktiv je nutnΘ p°idat jednu pro CSßΦek, aby se i on aktivoval - jinak nebude funΦnφ. Na konec seznamu je tedy t°eba p°idat
AddModule mod_csacek.c
Nejd°φv je t°eba p°ekopφrovat nebo nalinkovat soubor mod_csacek.c do adresß°e se zdrojov²m k≤dem Apache. Pak do souboru Configuration p°idat direktivu:
Module csacek_module mod_csacek.oCSßΦek musφ b²t poslednφ uveden² modul, jinak hrozφ problΘmy.
Pokud se p°i vytvß°enφ souboru mod_csacek.c programem make vypsalo:
Pouziva se systemova knihovna: -lzje ji nutnΘ p°idat do EXTRA_LIBS, tj. v Configuration musφ b²t uvedeno n∞co jako:
EXTRA_LIBS= -lzDßle je t°eba zajistit, aby se p°i kompilaci mod_csacek.c na╣ly CSßΦkovskΘ hlaviΦkovΘ soubory. Nejjednodu╣╣φ cesta je modifikace CFLAGS (Apache 1.1.X) nebo EXTRA_CFLAGS (Apache 1.2.X) v souboru Configuration tak, aby obsahoval
-I/adresar/kde/je/rozbalen/CSacek
Nynφ se postupuje u╛ klasick²m zp∙sobem, spustφ se apachovsk² skript ./Configure, kter² vygeneruje to, co je t°eba. NßslednΘ make pak zkompiluje server. V²slednou binßrku je t°eba p°emφstit na svΘ mφsto a WWW server je mo╛nΘ nastartovat. Po rozchozenφ whichcode je instalace hotova. Pokud pou╛φvßte RedHat, prosφm p°eΦt∞te si tuto poznßmku ke konfiguraci.
Apache CSßΦek se dß dßle konfigurovat n∞kolika direktivami, p°ehled je uveden jinde.
V²sledn² soubor mod_csacek.so p°esunete do adresß°e s ostatnφmi dynamick²mi moduly. Pak je t°eba do konfigurace serveru p°idat direktivu
LoadModule csacek_module /cesta/k/modulum/mod_csacek.soCestu nenφ pot°eba zadßvat v p°φpad∞, ╛e je modul umφst∞n ve standardnφm adresß°i.
Nynφ staΦφ u╛ jen rozchodit whichcode a instalace je hotova. Pokud pou╛φvßte RedHat, prosφm p°eΦt∞te si tuto poznßmku ke konfiguraci.
Postup instalace je vφcemΘn∞ shodn² jako u Apache 1.2.X, jen je lep╣φ soubor mod_csacek.c nakopφrovat nebo nalinkovat do adresß°e .../apache_1.3.X/src/modules/extra/ a direktiva v apachovskΘm Configuration musφ b²t
AddModule modules/extra/mod_csacek.omφsto Module. Op∞t platφ, ╛e CSßΦek by m∞l b²t uveden jako poslednφ modul, jinak si koledujete o problΘmy. Obsah EXTRA_LIBS a EXTRA_CFLAGS je t°eba upravit tak, jak je uvedeno u popisu kompilace pod Apache 1.2.X.
Druhß mo╛nost je p°idat CSßΦek do serveru bez p°φmΘ editace
souboru Configuration. P°i spu╣t∞nφ APACI configure
p°idßte parametr
--add-module=src/modules/extra/mod_csacek.c
a skript zajisti vlo╛enφ a zakompilovßnφ modulu. Nenφ ale mo╛nΘ
nijak specifikovat extra adresß°e s hlaviΦkov²mi soubory, tak╛e
p°i tomto postupu je t°eba do adresß°e
.../src/modules/extra/ krom∞ mod_csacek.c
zkopφrovat i v╣echny CSßΦkovskΘ hlaviΦkovΘ soubory.
Pak se p°φkazem make zkompiluje server a je mo╛no
ho restartovat. StaΦφ jen
rozchodit whichcode a instalace je hotova.
Pokud pou╛φvßte RedHat, prosφm p°eΦt∞te si tuto
poznßmku ke konfiguraci.
Apache CSßΦek se dß dßle konfigurovat n∞kolika direktivami, p°ehled je uveden jinde.
Pro instalaci binßrnφ distribuce slou╛φ skript install_cgi.bat.
Je t°eba ho spustit z adresß°e, kde je binßrnφ distribuce
rozbalena. Akceptuje jedin² parametr - jmΘno adresß°e,
kde jsou umφst∞ny CGI skripty a kam se majφ po rozkopφrovßnφ dßt
csßΦkovskΘ binßky (toXXX, whichcode*). Pokud
tento adresß° ve chvφli, kdy je instalaΦnφ skript spu╣t∞n, neexistuje,
je vytvo°en.
Skript se takΘ postarß o vytvo°enφ adresß°e C:\CSacek
a zkopφruje tam whichcode_template.html. To je v╣e,
staΦφ u╛ jen ov∞°it, ╛e v╣e funguje OK - nap°. testovacφm URL
http://www.vas-server.cz/cgi-bin/toASCII/.
Pokud kompilujete CGI CSßΦek pomocφ n∞jakΘho IDE, m∙╛e p°ijφt vhod skript copy_cgi.bat, kter² program, zadan² jako argument, rozkopφruje na jednotlivΘ toXXX, whichcode. Jinak pak platφ to samΘ jako u kompilace pomocφ p°ilo╛enΘho Makefile.
Pro instalaci slou╛φ skript install_isapi.bat. Akceptuje dva parametry. Prvnφ je jmΘno adresß°e, kam se mß umφstit csßΦkovskΘ ISAPI dll (pokud tento adresß° neexistuje, bude vytvo°en). Druh² parametr je jedno z a, ano, n, ne a urΦuje, jestli se mß do registry zapsat defaultnφ konfigurace CSßΦku (obsah souboru csacek_isapi.reg). Pokud tento parametr nenφ uveden, ona konfigurace se do registry zapφ╣e. Skript install_isapi.bat takΘ zajistφ vytvo°enφ adresß°e C:\CSacek a nakopφrovßnφ souboru whichcode_tamplate.html. Tφm je prvnφ polovina instalace hotova.
Dßle je t°eba zm∞nit konfiguraci serveru IIS tak, aby CSßΦek pou╛il. CSßΦek je t°eba nainstalovat jako globßlnφ ISAPI filtr. Dß se to ud∞lat p°es program MS Management Console (v menu je obvykle oznaΦovßn jako Sprßvce slu╛eb sφt∞ Internet). V oknu s Console root je pod zßlo╛kou Internet Informational Server zßlo╛ka podle jmΘna poΦφtaΦe. Na toto jmΘno je t°eba kliknout prav²m my╣φtkem. Objevφ se menu, je t°eba vybrat Vlastnosti. Objevφ se samostatnΘ okno, obsahuje mimo jinΘ sekci ╪φdφcφ vlastnosti, kterß obsahuje combo box (v²b∞r). Je t°eba tam t°eba ponechat Slu╛ba WWW a klinout na vedlej╣φ tlaΦφtko Upravit. Objevφ se dal╣φ okno, s n∞kolika zßlo╛kami. Je t°eba vybrat zßlo╛ku Filtry ISAPI. Objevφ se seznam ji╛ nainstalovan²ch ISAPI filtr∙. Zde se provßdφ i p°idßvßnφ nov²ch filtr∙. Stiskne se tlaΦφtko P°idat, pak se zadß jmΘno filtru (m∙╛e b²t jakΘkoli, nap°. CSßΦek) a cesta k DLL souboru, kter² jej implementuje. Pro CSßΦek bude cesta n∞co jako C:\CSacek\csacek_isapi.dll - jmΘno adresß°e je t°eba zadat stejn∞, jako p°i volßnφ skriptu install_isapi.bat, csacek_isapi.dll je vlastnφ filtr. Pokud si cestu p°esn∞ nepamatujete, lze pou╛φt tlaΦφtko Prochßzet a soubor nalΘzt takto.
Nynφ je t°eba p°estartovat IIS a m∙╛ete CSßΦek zaΦφt pou╛φvat.