Základy nastavení serveru

aneb suchá teorie

Obecně - Kořenový adresář - Startovní soubor - Procházení souborů - Aliasy - Přístup na heslo - Přesměrování - Logging - Patičky - Ošetření chyb - Spouštění programů - FTP přístup - FrontPage Extensions

Obecně

  • Nejsem správcem serveru, takže tento text berte s rezervou.
  • Publikujete-li na veřejném serveru (Mujweb, Místo a spol.), na zde popisovaná nastavení zapomeňte.
  • Pokud si webový prostot pronajímáte, za některé věci bude možná chtít správce zaplatit.
  • Nastavení serveru si můžete vyzkoušet doma: Nainstalujte si třeba PWS (součást Windows 98) nebo Apache, nemusíte být připojeni, i tak to bude lokálně fungovat.

Server jsou dvě věci: 

Ten počítač má nastavenou nějakou IP a doménovou adresu (www.něco.cz) a je zajímavý i z jiných hledisek (například se nevypíná:-). 

Softwarový server je například:

U každé složky (adresáře) webu se dají na serveru nastavit některé věci. Hlavní ale je, že se to v každé verzi softwarových serverů dělá jinak. Na Apachi se upravuje soubor httpd.conf, v IIS a PWS pod Windows jsou na to grafické prográmky. Většinou to musí udělat správce serveru nebo prostě někdo, kdo na to má práva, ale není to nic těžkého (když se ví jak).

Poznámka o správci serveru pro ty, kdož jimi nejsou:

Smiřte se s tím, že správce vašeho serveru je polobůh. Mluvte s ním slušně, prokazujte mu úctu a chvalte ho. Následující text vám může pouze naznačit, co po svém polobohovi můžete chtít. Pokud polobožstvo nebude nakloněno, máte smůlu.

Použité příklady

Jako příklady uvádím nastavení serveru Apache. V jiném velmi rozšířeném Internet Information Serveru jsou to grafická okna, která se mi sem nechce natahovat.

Kořenový adresář

V první řadě se na serveru nastavuje kořenový adresář (root), v jehož podadresářích (neboli složkách) jsou vlastní internetové stránky. Server pak ví, na jakém místě na svém normálním disku má stránky hledat.

Na Apachi je to v konfiguračním souboru httpd.conf řádek DocumentRoot, např.

DocumentRoot "/apache/htdocs" nebo 
DocumentRoot "c:/www"

Jméno startovního souboru

Doporučuji neměnit, ale dá se to. Na některých serverech musejí mít všechny složky jméno společné. Většinou to bývá index.html či default.htm. Zpravidla je to více různých jmen -- když server nenajde první, hledá druhý atd. 

Na Apachi se to dělá několika řádky s DirectoryIndex, např.: 

<IfModule mod_dir.c>
DirectoryIndex index.html
DirectoryIndex default.htm
DirectoryIndex index.php
</IfModule>

Procházení souborů 

Pokud složka neobsahuje startovní soubor, vypíší se jména souborů a složek. Pokud není directory listing povoleno, server prohlížeči nahlásí chybu 403 jako že "Nemáte oprávnění ..." nebo prostě "Forbiden". 

Procházení souborů se ve win-terminologii jmenuje directory listing, na Apachi je to indexing. Na IIS je implicitně vypnuté, na Apachi zapnuté.

Virtuální jméno neboli alias

Pokud vlastníte třeba doménu www.něco.cz, můžete si zvolit, že nějaký adresář na serveru (klasicky nějaký podadresář) se bude zobrazovat (mapovat) jako třeba http://cokoliv.něco.cz. Jinými slovy, v rámci své domény druhé úrovně můžete zřizovat domény úrovně třetí.

Práva pro přístup na heslo

Zdaleka ne na všech serverech si můžete nastavit, že čtení nějaké složky bude na heslo. A i pak to funguje jenom na serverech, které mají dobře nadefinované skupiny uživatelů. Na Apachi se do dělá pomocí souborů .htaccess .

Automatické přesměrování

Opět funguje jenom někde. Ale je to lepší, než pro totéž používat meta tagy nebo javascript, protože to dělá rovnou server.

Logging, sledování

Správce serveru si může nastavit, že bude sledovat, kdy a z jaké IP adresy si vaše stránky někdo čte. Většinou se to ale nedělá, protože to plní disk serveru mnoha zbytečnými daty.

Na disku serveru se někde vytvoří soubory .log, které obsahují datum, čas, adresu stránky, IP adresu klienta a metodu přístupu, někdy i adresu, odkud klient přišel. 

Na Apachi to vypadá nejčastěji takto: 

LogFormat "%h %l %u %t \"%r\" %s %b" common
CustomLog logs/access.log common

LogFormat nastavuje, jak bude vypadat složení položek, CustomLog určuje soubor, kam se to bude zapisovat (common je jméno formátu).

Je docela těžké potom z těch .log souborů potom získat nějakou kloudnou informaci o přístupu na stránky, mimo jiné protože jsou hrozně veliké. Nejprimitivnější způsob je nainportovat je třeba do Excelu a prohlížet pomocí kontingenčních tabulek (v nabídce Data).

Nastavíte-li celou složku na logování, může se (na IIS) hodit nějakou podsložku vypnout. Nejčastěji se vypínají složky s pomocnými soubory a obrázky. V Apachi se píší filtry podle umístění nebo přípon souborů.

Patičky

Všiml jsem si u IIS, že dokáže vkládat na konec každé stránky kus html kódu z určeného souboru, ale prakticky jsem to nezkusil.

Ošetření chyb

Nejčastější chyba je 404 - stránka nenalezena. Dá se nastavit, že v případě této chyby server načte konkrétní stránku, která se pošle klientovi. Na serveru Apache je nejčastější nastavení toto: 

ErrorDocument 404 /missing.html

Ten soubor s informací o chybě se jmenuje missing.html a je v kořeni stránek (a tedy společný pro celou doménu) Na IIS nevím, zda to jde.  

Spouštění programů

Z bezpečnostních důvodů bývá v každé složce zpravidla vypnuto. Hodí se pouze v případě, že používáte CGI skripty, SHTML, ASP nebo PHP. (Zajímá-li vás, co to znamená, podívejte se na stránku Jiřího Koska.) (Pro ASP má server IIS ještě speciální volbu Allow Scripts.) Bývá zvykem mít pro takové programy vyhrazený jediný adresář, ve kterém je povoleno jejich spouštění, většinou se jmenuje cgi-bin.

(Nic z toho se netýká skriptů na klientovi (JavaScript, VBScript), Flashí nebo Javy, to běží nezávisle na serveru.)

ASP, PHP, JSP, Cold Fusion

Aktivně generované stránky se musejí na server doinstalovat. Instalačky se většinou stahují z Internetu. Zpravidla je to drsná alchymie, nic pro amatéry (nejsnazší je instalace Triády). Na některých serverech jsou podpory nainstalovány implicitně (na IIS bývají ASP, na Apachi PHP, na Netscapovských serverech Cold Fusion), ale ani pak to nemusí fungovat správně.

FTP přístup

Základní způsob, kterým se stránky posílají od autora na server. Správce serveru musí každému autorovi nastavit FTP heslo a jméno (bývá shodné s uživatelským jménem). Dále se nastavuje, do které složky (adresáře) bude FTP primárně koukat. Někdo nastavuje cestu přímo do kořene autorových dokumentů, někdo nastavuje nějaký nadřazený adresář, soubory stránek jsou potom v nějaké podsložce. Nejčastěji se ta podsložka jmenuje "www" nebo stejně jako uživatelské jméno.

Na některých serverech z bezpečnostních důvodů FTP nepracuje. Soubory se pak musejí kopírovat prostřednictvím ssh (zřídka telnetu) příkazem scp (secure copy). 

FrontPage Extensions

Prográmky, které umožňují chod tzv. FronPage Component, což jsou šílenosti, které vkládá do stránek program FrontPage a FrontPage Express. Na serveru to je několik divných skrytých adresářů, které nejdou dlouhodobě smazat. Instalují se například z cédéčka FrontPage. Je to potřeba, pokud chcete využívat některých funkcí programů FrontPage. 

Pomocí Extensions se dají stránky také nahrávat na server (nemusí se pak používat FTP) a dají se dokonce vzdáleně upravovat. Každému uživateli využívajícímu extensions se musí nastavit práva a další heslo v jednom takovém prográmku. 

Vizte též: správa souborů, programování stránek, publikování, jak funguje WWW, omezení robotů, rychlost stránek, Domény na webu

Píše Yuhů
dusan@pc-slany.cz
Jak psát web O tvorbě, údržbě a zlepšování internetových stránek.

Základy HTML CSS FrontPage JavaScript

Hledání


Rozšířené


Jak psát web: http://dusan.pc-slany.cz/internet/

Píše Yuhů: autorova stránka, mail: dusan@pc-slany.cz

Poslední aktualizace 24.03.2002