C-SaCzech 2.1

Home
Další vývoj
Co je CSáček
Download
FAQ
Instalace
Dokumentace
Kredit
Kontakty
Podpora
Historie
Licence
Další info o češtině
| # Instalace CSáčku Tento dokument podrobně popisuje, jak (zkompilovat a) nainstalovat CSáček. Na unixech se využívá GNU autoconf ke zjištění vlastností systému. Kompilace by tedy měla proběhnout bez větších problémů na kterémkoli modernějším unixovém systému. Pro MS Windows NT je CSáček k dispozici v už zkompilované formě, i když ani na Windows by případné překompilování CGI CSáčku nemělo činit větší potíže. Postup instalace: Unix a unix-like systémy CGI FastCGI Apache modul Parametry skriptu `configure` MS Windows NT CGI ISAPI modul Apache modul - nefunční ### Unix - CGI mutace Pro účely testování bezproblémové kompilace a funkce mám přístup na tyto operační systémy: NetBSD/i386 (1.3.2, 1.4.x), Linux/i386 (2.0.20), Solaris/sparc (2.5, SunOS 4), Digital Unix OSF/alpha (4.0), AIX/rs6000 (4.2), IRIX/mips (6.2, 6.4, 6.5.1), někdy i HP-UX. Čas od času vyrobím binárky CGI CSáčku pro některé z nich, jsou pak k dispozici na adrese. http://www.csacek.cz/distrib/bin/cgi/unix/. Popis instalace je přiložen přímo k nim. 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. Zpět ### Unix - FastCGI mutace V první řadě musí FastCGI podporovat server a je nutno nainstalovat FastCGI Developer's Kit, aby byla dostupná knihovna fcgi a hlavičkové soubory. Popis a rozchození FastCGI je mimo záběr tohoto dokumentu; informace o něm viz domácí stránka FastCGI. Skript `configure` je třeba volat s parametrem `--with-target=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: `LIBS="-L/adresar/s/libfcgi" ./configure --with-target=FastCGI` 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. Zpět ### Unix - Apache modul CSáček funguje bez nutnosti patchovat server na Apache řady 1.1 (testováno na 1.1.1), 1.2 (testováno na 1.2.4 a 1.2.6) a 1.3 (testováno převážně na 1.3.1 a 1.3.9). 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-target=Apache`: `./configure --with-target=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: Apache 1.1.X a 1.2.X Apache 1.3.X - DSO Apache 1.3.X - statický 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 podadresáři `templates/` v adresáři s rozbaleným CSáčkem. 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`. 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` Tím instalace Apache CSáčku končí a můžete si už jen užívat komfortu, který vám CSáček nabízí ;-) Zpět #### Unix - Apache 1.1.X a 1.2.X U Apache 1.1.X a 1.2.X se CSáček musí zakompilovat do serveru. Je nutné mít k dispozici zdrojový kód serveru Apache a bude třeba mírně upravit konfigurační soubor pro kompilaci Apache 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.o` CSáč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: -lz je ji nutné přidat do `EXTRA_LIBS`, tj. v `Configuration` musí být uvedeno něco jako: EXTRA_LIBS= -lz Dá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. Zpět #### Unix - Apache 1.3.X - DSO Jednoznačně nejpohodlnější a preferovaná cesta, jak dostat CSáček na server. CSáček se jako dynamicky nahrávaný modul zkompiluje pomocí nástroje `apxs`, který je součástí Apache 1.3. Pokud je `apxs` v cestě při spuštění csáčkovského `configure`, při následném `make` se automaticky spustí a vytvoří příslušný soubor `mod_csacek.so`. Jinak se jen vypíše, jakým způsobem se má `apxs` volat a musíte to udělat "ručně" sami. 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.so` Cestu 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. Zpět #### Unix - Apache 1.3.X - statický Zakompilovat CSáček do serveru způsobem podobným jako pod Apache 1.1.X nebo 1.2.X lze samozřejmě i u Apache 1.3.X. Je to ale ta obtížnější a méně flexibilní cesta, za normálních okolností pravděpodobně použijete CSáček jako DSO modul. 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.o` mí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. Zpět ### Parametry skriptu `configure` --without-gcc Nepoužije se gcc, i když je na systému k dispozici. --with-templatedir=PATH Určuje plnou cestu k adresáři se šablonami; cesta musí být uvedena tak, jak je na souborovém systému, nikoli WWW URL. Pod Apache lze tuto hodnotu nastavit také konfigurační direktivou `csacekTemplateDir`. Default: `/www/csacek` --with-server-charset=KOD `KOD` bude nastaven jako defaultní kódování serveru - tato hodnota se použije pri překódování stránek, které nemají označeno sve kódování; vstup od uživatele bude také překódován do tohoto kódování. Pod Apache lze pouzit k nastavení téhož direktivu `csacekDefaultCharset`. Povolené hodnoty: např. `iso-8859-2`, `windows-1250`, `CP852`, `Mac`, `koi8-r` (viz pole `cstools_itab[]` v `cstools.c`) Default: `iso-8859-2` --with-debug[=LEVEL] Zapíná ladění CSáčku a pořizování záznamu o tom, co CSáček při běhu dělá. Výstupní soubory jsou `/tmp/csacek_``PID''_``PORADOVE_CISLO''`. --with-target=MUTACE Mutace, kterou chcete kompilovat. Povolené hodnoty: `Apache`, `CGI`, `FastCGI` Default: `CGI` --disable-decodequery Pomocí tohoto parametru lze vypnout překódovávání dat poslaných klientem do kódování serveru. U Apache CSáčku lze použít k témuž direktivu `csacekRecodeInput Off`. --disable-compression Nezakompilovat podporu pro kompresi. V případě, že je tento parametr uveden, CSáček se zkompiluje bez kódu pro kompresi. V případě, že tento parametr není uveden, u Apache CSáčku se dá direktivou `csacekCompress` komprese zapnout nebo vypnout. --with-cmdtag=X Určuje znak označující CSáček "tag". Default: `?` --program-suffix=SUFFIX Má význam pouze pro (Fast)CGI. Pomocí tohoto parametru lze zařídit, aby generované skripty měly nějakou příponu (nejčastěji `.cgi`). --with-method=METODA Má význam jen pro (Fast)CGI. Metoda, kterou se budou stránky vyzvedávat. `http` je jistota, ale může být zbytečně pomalá. `guess` se snaží uhádnout, jestli je daný soubor obyčejné HTML. Pokud ano, dokument předá přímo, jinak použije metodu `http` (tj. obsah dokumentu získá dalším požadavkem na server). Metoda `file` je nyni ekvivalentní s `guess` a je zachována jen kvůli kompatibilitě se starším CSáčkem a SaCzechem. Povolené hodnoty: `guess`, `http`, `file` Default: `guess` --with-partlist="CASTI" Má význam jen pro (Fast)CGI. Názvy částí se použijí při generování jednotlivých linků. Pro každou část se vygeneruje přislušná sada `toXXX.CAST`. Default: `"cs en"` --disable-secure Má význam pouze pro (Fast)CGI, pod Apache se použijí standardní bezpečnostní mechanismy serveru. CSáček normálně testuje, zda někde "po cestě" k souboru, o který byl požádán, není soubor `.htaccess` nebo `.nsconfig`. Tento soubor slouží k nastavování konfigurace pro daný podstrom na WWW serveru - např. přístupových práv. Pokud onen soubor nalezne, pro vyzvednutí dokumenu použije metodu `http`. Tímto parametrem lze toto chovani potlačit. --disable-symlink Má význam pouze pro (Fast)CGI. Může se vyskytnout sitace, kdy nelze použít symlinky. Pokud je uvedena tato volba, jednotlivé soubory se kopírují místo linkování. Zpět ### MS Windows NT - CGI Je třeba stáhnout binární distribuci pro MS Windows NT z adresy http://www.csacek.cz/distrib/bin/cgi/ a soubor rozbalit. 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/`. #### Kompilace ze zdrojového kódu Pokud kompilujete CSáček ze zdrojových kódů pomocí přiloženého `Makefile` pro MSVC 4.0 a 5.0 (v podadresáři `NT\MSVS\` u zdrojového kódu CSáčku), jednotlivé binární soubory se vytvoří v podadresáři `compile\`. Je třeba je do adresáře s ostatními CGI skripty přesunou manuálně, stejně tak jako manuálně vytvořit adresář `C:\CSacek` a přesunout tam soubor `whichcode_template.html` z podadresáře `templates\`. 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`. Zpět ### MS Windows NT - ISAPI ISAPI CSáček je momentálně k dispozici jen v binární podobě. Vzhledem k tomu, že firma Compaq nadále nepodporuje další vývoj MS Windows NT na počítačích s procesory Alpha, je k dispozici pouze verze pro i386. Instalace probíhá v těchto krocích: Je třeba stáhnout distribuční soubor z adresy http://www.csacek.cz/distrib/bin/isapi/ a rozbalit jej. Pro instalaci souborů 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 určuje, zda se má do registry zapsat defaultní konfigurace CSáčku (obsah souboru `csacek_isapi.reg`). Platné hodnoty jsou `a` jako `ano` (toto je default) a `n` jako `ne`. Skript `install_isapi.bat` také zajistí vytvoření adresáře `C:\CSacek` a zkopíruje tam soubor `whichcode_tamplate.html`. 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 předchozím 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. Tím by měl být CSáček připraven k používání. Pozor: distribuce ISAPI CSáčku dostupná na WWW funguje pouze jeden měsíc. Zpět ### MS Windows NT - Apache modul Apache modul CSáčku zatím není na MS Windows funkční, zatím není přesně jasné, proč (CSáček modul se nahraje, jen v určité chvíli najednou některé deskriptory vytvořené CSáčkem přestanou být platné). Je to jedna z vyšších priorit vývoje, zprovoznení se uskuteční jak to jen bude možné. Zatím je tedy nutno na Windows použít buď ISAPI CSáček pod IIS (ISAPI CSáček pod Apache emulací ISAPI nefunguje - Apache nepodporuje ISAPI filtry), nebo CGI CSáčka. Zpět Úvodní stránka

This page is part of documentation of C-SaCzech. It has been created and is maintained by Jaromír Doleček, dolecek@sky.cz
$Id: instalace.html,v 1.11 2002/03/05 20:30:18 dolecek Exp $