Distribuce programu je uloÚena v souboru
saczechU.tar.gzDistribuci je tÒeba rozbalit pouÚitÉm pÒÉkazu
gunzip < saczechU.tar.gz | tar xvf -Soubory budou rozbaleny do podadresÁÒe saczechU. Pot× nÁsleduje fÁze pÒizpÊsobenÉ vaÓim konkr×tnÉm podmÉnkÁm. VeÓker× zÁsahy se tÙkajÉ souboru make, kterÙ je souÃÁstÉ distribuce. Je tÒeba jednak zkontrolovat jeho prvnÉ ÒÁdek (zaÃÉnajÉcÉ znaky #!), zda obsahuje platnÙ pÒÉkaz pro spuÓtÅnÉ interpretu jazyka Perl. DÁle v tomto souboru nÁsledujÉ promÅnn×, jejichÚ hodnoty moÚnÁ uznÁte za vhodn× zmÅnit. Jsou to:
NechÔ napÒ. login adresÁÒ uÚivatele je /home/group/USER,
WWW koÒen tohoto uÚivatele je /home/group/USER/www
a t×to UNIXov× cestÅ odpovÉdÁ virtuÁlnÉ URL cesta http://www.kdesi.ca/~USER/
(tj., vÓechny soubory, kter× uÚivatel umÉstÉ do jak×holiv podadresÁÒe pod /home/group/USER/www jsou k dispozici cel×mu svÅtu - pokud to uÚivatel dovolÉ vhodnÙm nastavenÉm mÏdu jejich pÒÉstupu - vÅtvenÉm z tohoto URL). NechÔ uÚivatel umÉstÉ sv× CGI skripty do
/home/group/USER/www/cgi-bin,
vnejÓÉ svÅt je pak mÊÚe vyvolÁvat jako
http://www.kdesi.ca/~USER/cgi-bin/toASCII.cgi/..., etc.
V tomto pÒÉpadÅ je nutno tÒi vÙÓe uveden× promÅnn× nastavit takto:$homedir="/home/group/USER";(uvÁdÅjte bez zÁvÅreÃnÙch zpÅtnÙch lomÉtek).
$user="/~USER";
$cgipath="/~USER/cgi-bin";Pokud je moÚno skripty instalovat na serveru globÁlnÅ (implicitnÅ do /www/cgi-bin), coÚ je situace odpovÉdajÉcÉ pÊvodnÉmu SaCzechu, budou volÁny jako http://www.kdesi.ca/cgi-bin/toASCII.cgi/~USER/..., etc.
a nastavenÉ pÒÉsluÓnÙch promÅnnÙch je:$homedir="";
$user="";
$cgipath="/cgi-bin";
SaCzech-U definuje tyto promÅnnÅ a pole nÁsledovÅ:
if ( $names eq "WWWdia" )
{
$cgiprefix="to";
# nadpisy kodu v liste
$codename{"ASCII"}="ASCII";
$codename{"CP1250"}="MS Win";
$codename{"CP852"}="PC Latin 2";
$codename{"ISO-8859-2"}="ISO Latin 2";
$codename{"ISO-8859-1"}="ISO Latin 1";
$codename{"KEYBCS2"}="KEYBCS2";
$codename{"KOI8-CS"}="KOI8-CS";
$codename{"MAC"}="Mac";
@codes=
("ASCII","CP1250","MAC","ISO-8859-2","ISO-8859-1","CP852","KEYBCS2","KOI8-CS");
%abcNames=("ASCII","ASCII","CP1250","CP1250","MAC","MAC",
"ISO-8859-2","ISO-8859-2","ISO-8859-1","ISO-8859-1","CP852","CP852",
"KEYBCS2","KEYBCS2","KOI8-CS","KOI8-CS");
%altCodes=("ASCII","ascii","CP1250","1250","MAC","mac","ISO-8859-2","iso",
"ISO-8859-1","iso1","CP852","852","KEYBCS2","kam","KOI8-CS","koi8-cs");
}
elsif ( $names eq "EUnet")
{
$cgiprefix="";
# nadpisy kodu v liste
$codename{"ascii"}="Ascii";
$codename{"1250"}="CP1250";
$codename{"852"}="PC Latin 2";
$codename{"iso"}="ISO Latin 2";
$codename{"iso1"}="ISO Latin 1";
$codename{"kam"}="Kamenicti";
$codename{"koi8-cs"}="KOI8-CS";
$codename{"mac"}="Mac";
@codes=("ascii","1250","mac","iso","iso1","852","kam","koi8-cs");
%abcNames=("ascii","ASCII","1250","CP1250","mac","MAC","iso","ISO-8859-2",
"iso1","ISO-8859-1","852","CP852","kam","KEYBCS2","koi8-cs","KOI8-CS");
%altCodes=%abcNames;
}
else { die '$names'." v 'make' se musi rovnat bud \"WWWdia\" nebo \"EUnet\"\n"; }
$ASC = $codes[0];
$ISO1 = $codes[4];
ZvolÉte-li tuto variantu, nemÁ ÚÁdnÙ vÙznam nastavenÉ promÅnnÙch $socklib a $flag{"decodequery"}.
Tento zpÊsob je podstatnÅ m×nÅ efektivnÉ (obslouÚenÉ kaÚd×ho dotazu vyvolÁvÁ jeden dotaz navÉc), umoÚÎuje vÓak pÒekÏdovat vÓe, co je na serveru k dispozici - vÃetnÅ vÙstupÊ z CGI skriptÊ.
ZvolÉte-li tuto variantu, nemÁ ÚÁdnÙ vÙznam nastavenÉ promÅnnÙch $defaultfile, $dirdelim a pÒÉznakÊ timeservices a $ifmodifiedsince.
Metoda guess se snaÚÉ o rozumnÙ kompromis mezi pÒedchozÉmi alternativami. UrÃenÉ, kdy pouÚÉt kterÙ zpÊsob, vÓak rozhodnÅ nenÉ dokonal×.
Volba je urÃena pÒedevÓÉm pro operaÃnÉ syst×my jin× neÚ Unix, ve kter×m by funkce stat mÅla fungovat bez probl×mÊ. U odliÓnÙch syst×mÊ je tÒeba vÅc vyzkouÓet.
TÉm je ukonÃena konfiguraÃnÉ fÁze. Jako dalÓÉ krok spusÔte
./makeJeho vÙsledkem by mÅla bÙt skupina souborÊ (toXXX[.cgi] nebo yyy[.cgi] a soubor whichcode[.cgi]. Tyto soubory pÒesuÎte do adresÁÒe s CGI skripty tak, aby jejich umÉstÅnÉ vyhovovalo identifikaci, uveden× ve vÙÓe zmiÎovanÙch promÅnnÙch $cgipath a $homedir - napÒÉklad
mv *.cgi ~/www/cgi-bin/DoporuÃuji navÉc pro skript whichcode zav×st synonyma to__CHARSET__ (__CHARSET__) a to, pokud odkaz na nÅkterÙ kÏdovanÙ soubor neproÓel pÒes SaCzech-U nebo jÉm proÓel se ztrÁtou desÉtky. DotyÃnÁ synonyma zajistÉ pÒÉkazy
cd ~/www/cgi-binpÒÉpadnÅ
ln -s whichcode to__CHARSET__
ln -s whichcode to
ln -s whichcode.cgi __CHARSET__.cgiTÉm je instalace ukonÃena.
ln -s whichcode.cgi to.cgi
a podobnÅ.