This page is part of documentation of C-SaCzech and has been created and is maintained by Jaromir Dolecek, dolecek@ics.muni.cz

[C-SaCzech 2.0]
 

Autor: Jaromir Dolecek, dolecek@ics.muni.cz

C-SaCzech (nebo kratce CSacek) je prostredek pro zajisteni prekodovani WWW stranek na serveru podle pozadavku klientu. Stranky dynamicky koduje tak, aby ji klient dostal v kodovani cestiny, ve kterem je schopen ji spravne zobrazit.

    Jmeno C-SaCzech je vzniklo slozenim C a SaCzech a vyjadruje, jak CSacek vznikl - jako C verze vyborneho pane Satrapova koderu (ktery je napsan v jazyce Perl). Jako jmeno se ujalo take CSacek.
    SaCzech a C-SaCzech jsou jinak dva samostatne, navzajem nezavisle projekty, ac stale v zakladnich rysech kompatibilni.

Proc byl jako zaklad zvolen SaCzech a proc vubec dalsi koder ? SaCzech splnuje zakladni pozadavky na to, co by clovek predstavoval od prekodovavace, umoznuje snadno pouzivat relativni odkazy v dokumentech, snadno vyznacit kodovani dokumentu (dokonce dovoluje pouzit v jednom dokumentu nekolik ruznych kodovani cestiny) a je zdola kompatibilni se starsim WWWdia, pouziva stejne nazvy kodu. Je take vhodny pro celoplosne nasazeni na server, nebot je mozno prekodovavat i vystup z CGI skriptu (popr. i jinych modulu na strane serveru). Je vsak napsan v jazyce Perl a proto dost pomaly pri konecnem nasazeni na server.
    Pral jsem si, aby odezva i s pouzitim dynamickeho prekodovani byla co nejrychlejsi a tak jsem se rozhodl vytvorit verzi v C a pojmenoval ji (s laskavym svolenim pana Satrapy) C-SaCzech, abych tak vzdal hold puvodnimu vzoru. Prepis SaCzechu 2.0 byl dokoncen v kvetnu 1996 a vysledny program byl znacne sviznejsi nez perlovsky vzor. Od te chvile se pak datuje samostatny vyvoj CSacku, podrobnosti viz. Historie.
    CSacek je kompatibilni se SaCzechem a zdola kompatibilni se sebou samym (pokud je to mozne a rozumne).

Muj nehynouci dik patri Pavlovi Satrapovi, jehoz SaCzech byl predlohou pri vytvareni C-SaCzechu. CSacek by take nikdy nebyl tak dobry, jako je nyni, bez podnetnych pripominek a pomoci mnoha dalsich lidi - me uznani a dik patri zejmena Michalovi Krause, ktery mi pomohl najit a odladit hodne problemu (je to napriklad hlavne jeho zasluha, ze CSacek nyni mnohem lepe podporuje MSIE 3.0). Radou a napady mi na zacatku take velmi pomohl Hynek Med, jeho podnetne pripominky prispely znacnou merou k tomu, co dnes CSacek umi.

Pri psani CSacku byl pouzit i kod jinych autoru. Pro ucely komprese metodou "compress" byla pouzita cast kodu programu compress(1), tak jak je v distribuci NetBSD. Jedna se o kod vyvinuty Kalifornskou univerzitou, Berkeley a spolupracovniky. Podpora komprese metodou ``deflate'' a ``gzip'' je umoznena diky vyborne knihovne ``zlib'', jejimiz autory jsou panove Jean-loup Gailly a Mark Adler. Pro spravu systemovych prostredku byl pouzit kod, starajici se o totez na serveru Apache.

Za jakych podminek je mozno CSacek pouzivat ?
CSacek je je freeware, sireny se zdrojovym kodem v podminkach GNU Public License (presne zneni GPL viz napriklad soubor COPYING, ktery je soucasti distribuce). Bylo to slozite rozhodovani, ktery typ licence pouzit (dlouho byl CSacek siren pod BSD-like licenci), nakonec zvitezilo to, ze GNU-style licence je pomerne jasne formulovana a nedava prostor na dohady. V pripade potreby se lze kdykoli v konkretnim pripade dohodnout s autorem na jinych podminkach - CSacek sam o sobe neni GNU-tainted.
    CSacek funguje na Unixu a NT, jako CGI, FastCGI program nebo Apache modul. Vlastni CSackovsky kod je nyni plne reentrantni a bude bez uprav pracovat v prostredi, pouzivajicim vlakna (Apache (1.3 na NT, 2.0 jednou i jinde), Netscape servery, MS IIS).
    V budoucnu planuju CSacek naportovat take na OS/2 (uvazoval jsem i o MacOS, ale nemam potrebny hardware; najde se nejaky sponzor nebo majitel uz nepotrebneho Maca ?) a bude dopsana podpora pro NSAPI a ISAPI (zejmena s tim druhym bych uvital pomoc; prostredi MS mi k srdci neprirostlo).

Kde lze CSacek najit ?
Aktualni verze CSacku je k dispozici na ftp serveru UVT - ftp://ftp.ics.muni.cz/pub/www/csacek/.

Pro platformy, ke kterym mam pristup (v abecednim poradi AIX/RS6000, IRIX/mips, Linux/i386, NetBSD/i386, NT/i386, NT/alpha, OSF/alpha, Solaris/sparc) je k dispozici uz zkompilovany CGI CSacek na ftp://ftp.ics.muni.cz/pub/www/csacek/bin/.

Kontakt na autora
Blahoprejne a pochvalne dopisy, seky a poukazky, stejne jako stiznosti na chyby v CSacku, je mozno posilat na nekterou z nize uvedenych adres. Budu vdecny za informaci, ze CSacek pouzivate a libi se Vam (popr. ze ho nakonec nepouzivate, protoze ...). Delam na CSacku hlavne proto, ze me to bavi a (pozitivni) reakce uzivatelu pomahaji tomu, aby me to bavit (zbytecne brzy) neprestalo.
E-Mail: dolecek@ics.muni.cz
S-Mail:
  Jaromir Dolecek
  UVT MU
  Botanicka 68a
  Brno
  60200
WWW: http://www.ics.muni.cz/~dolecek/


Dalsi informace

 

Jine zajimave stranky tykajici se cestiny na Siti

Clanky:

ZPET Zpet

 


Chyby ve verzi 2.0.6

Pripadne zaplaty na chyby v posledni oficialni verzi se nalezaji v samostatnem adresari.
Problem s hlavickou Set-Cookie
duplikuje se posledni z posilanych cookies, u cookies se neopravuje komponenta ``path'' tak, aby URL slo pres CSacek
chyba v csa_is_csacek_server()
nefunguje automaticke prepisovani URL na "spratelene" servery, jedouci take na CSacku, pridane pomoci direktivy csacekServer
Oba problemy budou opraveny v dalsi verzi CSacku.

ZPET Zpet


V²b∞r k≤dovßnφ (pro p°φpad, ╛e by se strßnka zobrazila ve ╣patnΘm):
asc il1 il2 win kam pc2 koi mac utf8 whichcode
This page is part of documentation of C-SaCzech and has been created and is maintained by Jaromir Dolecek, dolecek@ics.muni.cz
$Id: index.html,v 1.9.2.6 1998/12/10 23:29:41 dolecek Exp $