Posted By: Koles (F~.Q~.v.v.) on 'CZwww'
Title:     *** CZWWW server-side FAQ ***
Date:      Wed Oct  9 16:30:25 1996


   >>> Jak na svych strankach/svem serveru docilit toho ci onoho? <<<
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

** 0. Strucny obsah: **

+  0. Strucny obsah :-)
+  1. HTML
   1.1. Barvicky, pozadi, bli(n)kani ...
   1.2. Formulare
   1.3. Ramecky
   1.4. Kontrola HTML syntaxe, HTML editory
   1.5. Dynamicke vsouvani textu do stranky
+  2. Klientem interpretovane programy
   2.1. JavaScript
   2.2. Java
+  3. CGI
   3.1. Uplny uvod
   3.2. Vyhodnocovani forem
   3.3. Pocitadlo pristupu na stranky
   3.4. Jak se vyporadat z rozlicnymi kodovanimi cestiny?
+  4. O WWW serverech
   4.1. Co je treba k provozovani WWW serveru?
   4.2. Jak omezit pristupy na svou stranku
   4.3. Vsuvky
+  5. Obrazky, zvuky, multimedia.
   5.1 Pruhledne a animovane obrazky


** 1. HTML **

 Jak vidno z nadpisu, z teto pasaze byste se meli dovedet vse, co bylo odhledne
 HTML na boardu CZWWW sdeleno.
 Nebudu zde prilis rozpitvavat jednotlive znacky. Informace o nich lze najit
 napriklad na nasledujicich adresach:
  http://www.w3.org/pub/WWW/MarkUp/html-spec/L2Pindex.html - prehled HTML 2.0
  http://lib-c.vscht.cz/cgi-bin/toASCII/Manuals/HTML/intrhtml.html - cesky
   preklad Uvodu do HTML od Iana Grahama
  http://www.cc.ukans.edu/info/HTML_quick.html - HTML Quock Reference
  http://developer.netscape.com/library/documentation/htmlspec/ - HTML jak
   si ho predstavuji u Netscape Corporation.
 Odkazy na dalsi, prevazne v cestine psane dokumenty o HTML naleznete mj.
 na Seznamu nejlepsich mist ceskeho Internetu (pry :). URL je
  http://www.seznam.cz/Pocitace_a_Internet/Internet_a_WWW/Tvorba_WWW/

 Krome toho bych pripomel mozna dosti omselou, presto velice rozumnou radu:
 stahnete si zdrojacek nejake zajimave stranky a zkuste z nej neco vymeditovat.
 K teto meditaci se velmi dobre chodi domovska stranka Lubose Motla, ktera
 pres diskutabilni esteticke kvality muze slouzit jako pomerne obsahla
 demonstrace moznosti, ktere se autorum stranek nabizeji.
 Adresa je http://www.kolej.mff.cuni.cz/~lumo.

** 1.1. Barvicky, pozadi, bli(n)kani ... **

 Pro cely dokument se barva normalniho textu, odkazu pouzitych, nedotcenych i
 prave mackanych, jakozto i pozadi stranky definuje pomoci atributu znacky
 <BODY>.
 Jsou to atributy BGCOLOR (barva pozadi), TEXT (barva bezneho textu),
 LINK (barva "cerstveho" odkazu), VLINK (pouzity odkaz - tj. odkaz, jehoz
 navstevu si vas prohlizec pamatuje) a ALINK (aktivni -  tj. v okamziku
 kliknuti). Z podobneho soudku je i atribut BACKGROUND, urcujici soubor, ktery
 se ma nacist jako pozadi.

 Barvu pisma lokalne (pro nejaky kousek) lze menit pomoci znacky <FONT> a
 jejiho parametru COLOR.
 Text lze rozblikat vlozenim do znacky <BLINK>. Jak vsak poznamenal Ook, takovy
 text je casto spise k blinkani.

 Tyto atributy NEJSOU soucasti specifikace HTML 2.0. Presto jsou podporovany
 vetsinou nejen nejnovejsich grafickych prohlizecu.

 Barva se zadava bud anglickym slovem, nebo RGB kodem tvaru #rrggbb

 O RGB pise Kyanid:
"RGB - metoda, pomoci niz definujes barvy skladanim ze tri segmentu :
      Red, Green a Blue. Pokud chtres dostat trba bilou, tak ji ziskas slozenim
      vsech tri "pustenejch naplno". Tuhletu kombinaci vsak porebujes nejak
vyjadrit, tak se k tomuto ucelu pouziva vyjadrenim hodnotami mezi 0 a 255
(proc asi zrovna takhle ;-)) a zapsanych (treba zrovna v HTNL souborech)
hexadecimalne a to v poradi, ktere je nabiledni. Pokud jsi definoval treba ve
Windowskach v Paintbrushi barvy na zakazku, tak to je vlastne ono. Je to
docela dobrej zpusob, jak si urcity kombince barev muzes "osahat", ktery se
Ti libi, ktery ne a ktery chces pouzivat.
Tedy, jak Marek skoro spravne pise, treba cervena (syta, bez nejakych primesi
ostatnih barev se vyjadri takto : #FF0000. Bila pak #FFFFFF, cerna : #000000
( ne #FFFFFF).
Jine prakticke vyuziti teto techniky : Pokud tuhle zpravu ctes na barevnem
monitoru (ne vsak na notebooku), tak se zkus zadivat uplne zblizoucka na
plochu obrazovky ...."

** 1.2. Formulare **

 Formular je definovan znackou <FORM>, mezi jejimiz atributy bych zduraznil
 METHOD a ACTION.
 METHOD muze byt POST nebo GET. POST znamena, ze vysledek formy bude zaslan
 na URL z ACTION na standardni vstup, GET zpusobuje volani toho URL ve tvaru
 http://url.z.action?vysledek_formy.

 Formulare jsou urceny k tomu, aby navstevnik stranky mohl poskytnout "strance"
 nejake informace.
 K tomu lze uvnitr formulare pouzit znacek <INPUT>, <SELECT> a <TEXTAREA>.
 <INPUT> umoznuje v zavislosti na TYPE vytvorit nekolik vstupnich objektu:

 * TYPE=checkbox se zobrazi jako obycejny checkbox
 * TYPE=radio vytvori radio buttony. Zrejme ma smysl pouze nekolik r.b. tehoz
    NAME a rozdilnych VALUE (viz dale). Pridanim atributu CHECKED se zobrazi
    jako zaskrtnuty.
 * TYPE=text znamena jednoradkove editacni okynko. Atributem MAXLENGTH se
    nastavi maximalni delka textu. Delku samotneho okynka nastavuje SIZE.
 * TYPE=password - totez jako text, ale namisto textu zobrazuje hvezdicky.
 * TYPE=hidden slouzi k predani parametru, do nichz uzivatel nema co kecat :)
    pomoci NAME a VALUE (viz dale).
 * TYPE=reset vytvori tlacitko slouzici k znovunastaveni puvodnich hodnot.
 * TYPE=submit nakonec vytvori tlacitko, slouzici k odeslani informaci.

 <SELECT NAME=name><OPTION VALUE=value1><OPTION VALUE=value2></SELECT>
 definuje listbox s nazvem 'name' nabizejici vyber z polozek 'value1' a
 'value2'.

 <TEXTAREA COLS=pocet_sloupcu ROWS=pocet_radku> pak vytvari viceradkovou
 obdobu <INPUT TYPE=text>.

 Dalsimi dulezitymi atributy jsou NAME (definuje jmeno pro prvek formulare),
 dale pak VALUE, ktera udava default hodnotu prvkem vracenou.
 Odeslanim obsahu formy se pak na v ACTION uvedene URL posle radek tvaru
 NAME1=VALUE1&NAME2=VALUE2&NAME3=VALUE3& atd.
 Navic vetsina nealfanumerickych znaku je kodovana symbolem %hh, kde hh je
 hexadecimalni ASCII hodnota onoho znaku. Vyjimku tvori mezerka (space), ktera
 se koduje znakem + (plus).

 URL v ACTION muze byt mj. i typu mailto:nekdo@nekde.cz.
 K jeho "smysluplnemu" pouziti je treba v METHOD uvest POST.
 Vzhledem k vyse uvedenemu kodovani nealfanumerickych znaku je ale videt, proc
 jsem slovo "smysluplne" umistil do uvozovek :)

 Proto toto URL obvykle vede na CGI program, ktery se s vysledkem formy umi
 poprat sam. Dalsi detaily by mely byt v kapitolce o CGI.

** 1.3. Ramecky **

 Ramecky se vytvareji pomoci prikazu <FRAMESET> a <FRAME>.
 Priklad:
 <FRAMESET ROWS="50,*">
  <FRAME NAME="frame1" SRC="http://nekde.cz/neco">
  <FRAMESET COLS="*,100">
    <FRAME NAME="frame2" SRC="http://nekde.cz/neco_jineho">
    <FRAME NAME="frame3" SRC="http://www.penthousemag.edu/">
  </FRAMESET>
 </FRAMESET>

 Tento priklad nejprve rozdeli obrazovku na dve casti horizontalne (ROWS),
 pricemz horni cast bude siroka neco malo pres 50 pixelu a druha zabere
 zbytek a je nasledne rozdelena na dva dily vertikalne (ROWS), pricemz
 prava cast bude tlusta neco pres 100 pixelu.
 Tyto ramecky si pak prohlizec bude pamatovat pod jmeny frame1, frame2 a
 frame3, a natahne do nich stranky definovane atributy SRC.

 Chcete-li do stranky nachazejici se v jednom z ramecku umistit odkaz takovym
 zpusobem, aby se jeho cil natahnul do jineho ramecku, pouzije v <A HREF=...>
 atribut TARGET=jmeno_ramecku_kam_se_to_ma_natahnout. (napr. frame1 z vyse
 uvedeneho prikladu).

 Atribut TARGET se da rovnez pouzit u formularu - nadefinujete-li jej jako
 <FORM ACTION=nejaky_skript TARGET=frame1>, potom vysledek CGI skriptu
 nejaky_skript bude zobrazen v ramecku frame1.

 Existuje nekolik preddefinovanych navesti pro navigaci pomoci TARGET.
 Jsou to mj. :
  _parent - "rodicovsky" ramecek,
  _top    - zapomen na ramecky, natahni to do prazdne obrazovky.
  _blank  - otevre nove okno prohlizece a do nej natahne pozadovany dokument.
            tohoto lze docilit i jakymkoli dosud nedefinovanym jmenem,
            prohlizec si ho pak zapamatuje, a pokud se s timto jmenem opet
            setka, spoji si ho s timto oknem.

 Ohledne ramecku je mozno pouzivat spoustu jinych atributu, ktere vsak snad
 neni nutne zde uvadet; zajemci se muzou informavat nejlepe na v uvodu
 zminenych strankach Netscape.

 Ramecky byly puvodne implementovany pouze v prohlizecich firmy Netscape od
 verze 2.0, nyni si s nimi rozumi i Microsoft Internet Explorer 3.0 a dokonce
 i Lynx 2-6.

** 1.4. Kontrola HTML syntaxe, HTML editory **

 Dotaz: >  Existuje nejaky program na kontolu syntaxe HTML?
        >  Rozumej: kontola <> "" </I> a tak...

 Pro unixy existuje program v perlu s nazvem weblint. V Cechach se nachazi
 temer vsude (aspon podle Nosey Parkera), namatkou vybiram prazsky SunSite:
  
ftp://sunsite.mff.cuni.cz/Languages/Perl/CPAN/authors/id/NEILB/weblint-1.017.ta
r.gz
 Primarni site je pravdepodobne http://www.khoral.com/staff/neilb/weblint.html
 Existuje dokonce i jakysi macweblint (tj. weblint pro macy), viz
  ftp://ftp.ruk.cuni.cz/pub/mirrors/mac/util/comm/www/macweblint1.014.hqx

 Jina odpoved spada jiz castacne pod odpovedi na dotazy typu "Shanim nejaky
 dobry HTML editor, poradte."

 Bos radi:
"   Stahni si z http://www.sausage.com sharewarovou verzi (30 dni) HotDoga. Umi
nejen kontrolu syntaxe, ale i spoustu dalsich skvelejch veci - je to nejlepsi
editor, jakej jsem videl (ne ze bych jich videl tak moc :)"

 Ovsem ohledne kvality kontroly HTML syntaxe Krata kontruje:
"Ha   Ha   Ha
No ja to zkousel a najde tak polovinu chyb.... (coz je DOST malo...)"

i kdyz uznava:
"No nerikam, ze je to "shit" (tabulky umi pekne !!!), ale takovej
HotMetal je asi lepsi...".

A dodava:
"Jooo, jestli vas zajima, kterej HTML editor je nejlepsi, pak si pockejte
na pristi cislo Z.I.P.u, tam bude Big Test HTML editoru...
(ale asi jen pod hnusnejma Woknama... to s ejeste uvidi..)"

 Ohledne editoru vzkazuje uzivatelum x-windows Loop:
"Objevil jsem docela cool html editor pro x woknous, ma to asi mega, ale
stoji to za to. Kdybyste to negdo chtel, mailnete mi, a ja dam na svoju
stranku odkaz. Ono to totiz neni z inetu, ale z cedecka..."

 Za pomerne slusny WYSIWYG HTML editor je povazovan Navigator Gold 3.0.
 U tohoto produktu se uzivatel mohl v pate beta verzi setkat s nasledujicim:
 "neumel vlozit (jako editor) ani interpretovat (browser) mezeru mezi dlouhym 
 mekkym i a hackovanym c."
 Tato chyba byla v dalsich verzich odstranena.

 Grafickym editorum je vyhrazeno misto v sekci "Obrazky, zvuky ... multimedia"
 techto FAQ.

** 1.5. Dynamicke vkladani textu **

 Dynamicke vkladani textu do stranky (analogicky s vkladanim obrazku pomoci
 <IMG >) HTML samotne neumoznuje.
 Lze k tomu pouzit vsuvek (server-parsed documents), ale to uz je jina 
kapitola.
** 2.1. JavaScript **

 Dotaz: > A, strycku, co je to JAVAskript?

 Lumo odpovida:
 "Mily synovecku, javascript je jazyk, dokumentaci ke kteremu najdes treba
 na http://www.ms.mff.cuni.cz/~lmot2220/js/doc/DEFAULT.html.
 Interpretuje ho primo klient (tedy pocitac, kde spoustis Netscape) a jeho
 prikazy se pisi normalne do HTML souboru, ve tvaru

 <script>
  Prikazy JavaScriptu apod.
 </script>
 <H4> Nadpis </H4> apod...

 Na te me strance http://port.kolej.mff.cuni.cz/js/ms/lmframs.htm najdes
 i kalkulacku - muzes si zaklikat (taky ti to hodi chybu, ktera jde
 2xIgnoreovat pri stisku =?) - jde v tom opravdu programovat skoro cokoli. Ma
 to promenne, slabe typovane (vsechno je vlastne typ retezec...)"

 Nedavnemu smazani LianeBBS podlehl dotaz na to, jak prinutit prohlizec, aby
 pri najeti mysi ukazoval na odkaz status bar ukazoval jiny text nezli adresu
 z <A HREF="..">. (Napr. jako nektere odkazy na uvodni strance Seznamu -
 http://www.seznam.cz/)
 Reseni nabizi JavaScript:
 <A HREF="ponozky.html" onMouseOver="window.status='Nase ponozky. Cenik';
  return true">ponozky</A> zpusobi, ze pri najeti mysi na "ponozky" se vypise
 onen window.status.

** 2.2. Java **

 Dotaz: > Shanim jakoukoli dokumentaci o Jave.

 A takto pravil Ook:
"www.javasoft.com, java.sun.com
Je to tam pro Win '95/NT a Sun ... Port na Linux je nekde jinde,a le mel by
tam byt link ... Zkus treba www.linux.org nebo www.gamelan.com (nejvetsi sit,
co se Javy tyce) ...
Ja osobne mam nainstalovanej JDK (Java Development kit) pro '95 i pro Linux.
Na my 486 DX 33 s 12 MB RAM, to IMHO jede na Linuxu tak o 30% rychlejc ..."


** 3. CGI **
** 3.1. Uplny uvod **

 Dotaz: > Mohl by mi nekdo pomalu a polopate vysvetlit jak se dela CGI ????

 http://hoohoo.ncsa.uiuc.edu/cgi/ - tam to vysvetluji
 http://www.worldwidemart.com/scripts/ - obsahla sbirka CGI programu

 Nejake povidani na tema CGI v cestine je na
 http://www.inf.upol.cz/~michlv/cgi-cz/

 Rychle a polopaticky by se dalo rici, ze CGI program je zcela obycejny 
program,
 o nemz www server vi, ze ho muze na zavolani spoustet a vysledky pak zasilat
 klientovi.
 Aby mu klient rozumnel, musi nejprve vytisknout hlavicku - napr. pokud vas
 program generuje HTML kod, musi nejprve oznamit "Content-type: 
text/htmlnn".
 Ale radeji si o tom neco prectete na zminenych strankach:-)

** 3.2. Vyhodnocovani forem **

 Jak bylo jiz zmineno v odstavci 1.2. o formularich na WWW strankach, vysledek
 takovehoto formulare je zailan na URL definovane atributem ACTION ve tvaru
 NAME1=VALUE1&NAME2=VALUE2& ... &NAMEn=VALUEn a to podle atributu METHOD bud
 metodou POST (CGI program tento retezec obdrzi na standardnim vstupu) a nebo
 GET (CGI je volan s "ocaskem" tvorenym otaznikem a onim odpornym retezcem,
 ktery je programu predan promennou prostredi QUERY_STRING). Toto s jistotou
 plati pouze u serveru Unixovych.

 Pokud ke psani sveho CGI skriptu pouzivate programovai jazyk Perl, muzete
 k vysekani pouzitelnych informaci z vysledku formulare pouzit mimo jine
 knihovny cgi-lib.pl puvodne z http://www.bio.cam.ac.uk/cgi-lib/
 v Cechach vsak dostupne napr. i na SunSite:
 ftp://sunsite.mff.cuni.cz/Languages/Perl/perl.org/ext/CGI/cgi-lib.pl.gz

** 3.3. Pocitadlo pristupu na stranky **

 Pocitadlo pristupu na stranky neni nic jineho nez CGI program, ktery si 
uklada
 do nejakeho souboru informace o tom, z jake stranky byl kolikrat zavolan a
 toto cislo zaroven vypisuje - nejcasteji ve forme obrazku, caste jsou vsak i
 ryze textova pocitadla (k jejich vyuzivani je vsak treba na serveru povolit
 tzv. vsuvky - server side includes, o kterych bude rec pozdeji).

 Informace o programech tohoto typu se vyskutuji napr. na
 http://www.eeb.ele.tue.nl/software/counter.html
 nebo http://atrey.karlin.mff.cuni.cz/counter/Count.html.

 Pokud nechcete ci nemuzete si nainstalovat sve vlastni pocitadlo, muzete
 pouzit nemale mnozstvi pocitadel verejnych. Mezi nejznamejsi patri pocitadlo
 Marka Antose, informace na http://www.cuni.cz/~antos.
 (je ale vesele sledovat, jak se na spouste ceskych stranek na misto pocitadla
 zrobrazuji hranate fleky v zavislosti na vytizenosti decu59 ;)

** 3.4. Jak se vyporadat s rozlicnymi kodovanimi cestiny? **

 Marek Antos upozornil na "Velkou stranku o kodovani cestiny" na
 http://www.cuni.cz/~obo/

 Pavel Semerad poznamenava:
 "  Ale docela dobre to ma vyreseny Jakub Jelinek na Sunsite. On to pise
 v ISO Latin 2 a udelal upravu do WWW serveru, ktera to automaticky
 prevadi na kodovani, ktery si vybral klient."

 Za nejrozsirenejsi zpusob, jak tento problem resit, se da povazovat pouziti
 SaCzechu, sady to perlovych CGI skriptu od Pavla Satrapy.
 Domovska stranka SaCzechu se nachazi na
 http://www.kin.vslib.cz/cgi-bin/whichcode/~satrapa/sw/saczech/saczech.html


** 4. O WWW serverech **
** 4.1. Co je treba k provozovani WWW serveru? **

 RR:
 "Nic. Jenom nejaky httpd (http demon). Dnes uz jsou pro radu OS. UNIX, 
 Windows NT, Windows 95, Newim, jestli i pod stare Windows a neslysel jsem o 
 serveru pro DOS. Ten asi nebude z pochopitelnych duvodu."

 Dotaz: > Muzu jet pod LINUXEM, kdyz to pobezi na komercni bazi?
 Odpoved: Ano.

 Dotaz: > MUSIM si koupit komercni httpd? Nebo staci neco freewaroveho?
 Odpoved: Ne.

 Za nejpopularnejsi WWW server soucasnosti se da povazovat freewareovy Apache.
 Informace na http://www.apache.org, v ramci Cesnetu radeji opet prazsky 
 SunSite - http://sunsite.mff.cuni.cz/web/apache/

 Dotaz: Potrebuju "poradnou masinu"?
 Odpoved: Ne. Na priklad nejnavstevovanejsi cesky www server MAmedia jel
 donedavna na DX2, 66MHz, 16MB RAM s Apachem a Linuxem, jadro 1.2.13.
 A kam to dotahli :-)

** 4.2. Jak omezit pristupy na svou stranku **

 Nasledujici radky plati z jistotou pro servery Apache a NCSA.
 Z velke casti se jedna o zastrucnenou verzi casti Jirikovy "Security Howto
 Page", kterou nemohu nedoporucit.
 Jeji adresa je http://manes.vse.cz/~xkadj06/WWW/security.html

 Omezit pristup na strnky umistene v jekemkoli adresari (pristupemu www 
 serveru samozrejme) lze pouze s pravem zapisu do techto adresaru.
 Tato omezeni se mohou byt sice definovana v jednom z konfiguracnich souboru
 (ServerRoot/conf/access.conf) uvnitr direktivy <Directory dotycny_adresar>,
 ale postaci, jsou-li popsana ve specialnim souboru, ktery se obvykle jmenuje
 .htaccess (default, lze prekonfigurovat - proc ale :) a je umisten prave
 v inkriminovanem adresari.

 V obou pripadech (tj. at pouzivame .htaccess nebo access.conf) se da pouzit
 nasledujicich direktiv:

  AuthUserFile soubor_s_hesly
  AuthGroupFile soubor_se_skupinami
  AuthType Basic
  AuthName retezec
  <Limit seznam_metod>
   require seznam_require
  </Limit>

 kde:

 soubor_s_hesly
      je cesta k souboru s hesly. Struktura souboru je vzdalene podobna
      strukture souboru /etc/passwd znameho z UNIXovych systemu
 soubor_se_skupinami
      je cesta k souboru s definicemi skupin. Struktura souboru je opet
      vzdalene podobna strukture souboru /etc/group z UNIXovych systemu
 retezec
      je retezec, ktery nejakym zpusobem pojmenovava danou chranenou oblast
      a ktery bude zobrazovan pri pozadavku na zadani jmena a hesla
 seznam_metod
      je cast, v niz jsou vyjmenovany metody pristupu, ktere je treba omezit.
      Momentalne vim o dvou moznych metodach: GET a POST. K tomu, aby server
      poslal prohlizeci stranku, je treba mit povolenou metodu GET.
      Jejim omezenim se tedy dany adresar znepristupni.
 seznam_require
      obsahuje jeden z nasledujicich parametru:
            user seznam_uzivatelu
            group seznam_skupin
            valid-user
      kde:
      seznam_uzivatelu
            obsahuje jednoho nebo vice uzivatelu [definovanych v souboru 
hesel]
            oddelenych mezerou
      seznam_skupin
            obsahuje jedne nebo vice skupin [definovanych v souboru skupin]
            oddelenych mezerou

 K vytvoreni souboru s hesly se pouziva utilitka htpasswd dodavana spolu s 
HTTP
 daemonem.

 Pokud chcete zamezit pristupu z nekterych domen, nabizi se (opet v tychz
 souborech) nasledujici:

  <Limit seznam_metod>
   order seznam_order
   deny from seznam_deny
   allow from seznam_allow
  </Limit>

 kde:
  seznam_metod
      byl popsan vyse,
  seznam_order
      urcuje poradi provadeni prikazu deny a allow, pricemz posledni prikaz ma
      nejvetsi vahu
  seznam_deny
      obsahuje domeny [pripadne i servery], z nichz je potreba zakazat pristup.
      Pro zakazani vsech je vhodny parametr all.
  seznam_allow
      naopak obsahuje domeny, z nichz je potreba povolit pristup. Rovnez je
      mozne pouzit parametr all.

** 4.3 Vsuvky **

 Zname Unixove WWW servery (z jistotou NCSA, Apache, Netscape) podporuji
 obvykle pouzivani tzv. vsuvek.

 Vsuvky jsou zvlastni prikazy vkladane do komentaru (<!-- .. -->) uvnitr
 stranky. Tyto prikazy jsou definovany specifikaci SPML, coz pravdepodobne
 znamena Server Parsed Mark-Up Language (bez zaruky).
 Jeho blizsi popis naleznete napr. mezi dokumentaci k Apachovo modulu
 mod_include na http://sunsite.mff.cuni.cz/web/apache/docs/mod_include.html

 V podstate jde o to, oznamit serveru, ze na urcitou skupinu dokumentu je treba
 nahlizet jako na soubory typu text/x-server-parsed-html.
 V Apache serveru se napr. nastavi pridanim do conf/srm.conf radku
 'AddType text/x-server-parsed-html .shtml' oznaci vsechny soubory s priponou
 .shtml jako vhodne kandidaty pro vsuvky.

 Krome toho je trebe jeste v souboru conf/access.conf vsuvky explicitne povolit
 pridanim 'Options Includes' dovnitr prislusneho <Directory>. Protoze vsuvky
 umoznuji spoustet CGI skripty, muze spravce tuto vlastnost omezit tim, ze
 za namisto 'Includes' napise 'IncludesNOEXEC'.

 Pokud nekomu prijdou moznosti SPML omezene, muze si samozrejme napsat jako CGI
 svuj vlastni HTML preprocesor a ten priradit nekteremu mime-typu direktivou
 Action mime-type cesta_k_skriptu.


** 5. Obrazky, zvuky, multimedia **

 Pres honosny titul obsahuje tato kapitolka zatim pouze par zminek o tom, jak
 vytvaret animovane nebo pruhledne obrazky.

** 5.1 Pruhledne a animovane obrazky **

 Udelat jednu barvu pruhlednou (transparentni) umoznuje format gif89b (jestli
 to nekoho zajima :) Tento format je podporovan v soucasnosti nejrozsirenejsimi
 grafickymi prohlizeci WWW.

 Nejjednodussi programek, ktery umoznuje prohlasit jednu z pouzitych barev za
 transparentni, se jmenuje giftrans. Dotazem na Nosey Parkera
 (http://parker.vslib.cz/parker.html) obdrzite pomerne rozsahlou nabidku tohoto
 programu pro mnoho platforem.

 Sofistikovanejsi graficke editory jako Adobe Photoshop umoznuji po 
 priinstalovani zvlastniho plug-inu exportovat obrazky do formatu gif89b 
 primo. 

 I na vytvareni animovanych obrazku existuji programy.
 Pro MS-Windows byl casto uvaden gifcon, k nalezeni napriklad na
 ftp.vslib.cz/pub/msdos/win3/graphics/gifcon.exe, ktery navic umi i vytvaret
 pruhledne obrazku.
 Jeho nevyhodou je, ze neumi vytvorit vecnou smycku, ktera spociva v pridani
 jakesi Netscape loop extension. Tuto umi pridat perlovy skriptik znamy pod
 nazvy gifloop nebo gifanim.

 Problemy se zacyklovanim animaci nemusi resit uzivatele Macintoshu, pro ktere
 existuje prijemna utilitka GifBuilder.


Tot vse, snad to nekomu prospeje.

 Pavel 

P.S. Jakekoli doplneni, upresneni, ci jine komentare mi posilejte do posty zde
     na Liane BBS.

P.P.S. Pres to, ze tyto FAQ urcite nebudou bez chyb, dovoluji si jejich 
     exitenci povazovat za argument pro mazani postu opakujicich jiz recene 
     nebo k tomuto opakovani vybizejicich.

P.P.P.S. Omlouvam se za pripadnou klesajici uroven smerem ke konci toho 
     prispevku - je pravdepodobne zpusobena prechodem od SGI s dvacetipalcovym
     monitorem k PCcku se starym ctrnactipaleckem ... :-)


Search the boards