5.1 Instalace interpretů skriptovacích jazyků a jejich konfigurace
Dynamika stránek může být zajištěna různými způsoby. V zásadě, se obvykle spouští externí programový kód, který zajiš»uje dynamickou odpověď klientovi. Daný programový kód může existovat ve dvou podobách a v různých vztazích k WWW serveru. Podoby jsou: zdrojový kód (nebo binární mezikód) a binární kód (strojový kód). první varianta vyžaduje ke spuštění interpret. Interpret nebo binární kód může vůči WWW serveru vystupovat obvykle ve třech úrovních, které jsou ve vztahu s formou komunikace mezi WWW serverem a kódem:
Variantě "Součást kódu WWW serveru" se věnovat nebudeme, protože se obvykle nevyužívá. Variantě "Komunikace přes API WWW serveru" se věnují specializované publikace dostupné ze stránek projektu Apache. Varianta "Komunikace přes jiné rozhraní" je velmi obvyklá a proto jí bude věnována pozornost. |
Úvod |
V případě samospustitelných aplikací, kdy nepotřebujeme Interpret stačí aplikaci umístit do adresáře, kde je povoleno spouštět CGI aplikace (viz kap. 4). V případě interpretů se obvykle setkáme s tím, že některé jsou již součástí OS (např. na OS Linux: BASH, SH, Perl) a rovněž že není nutné WWW server pro jejich spouštění konfigurovat. U jiných je nutná instalace a někdy také konfigurace (pokud není již součástí instalace) (např. PHP). |
|
SAMOSTATNÝ ÚKOL 17 |
|
|
Vyzkoušejte si vytvoření CGI skriptu, který využívá interpret SH. Skript pojmenujte s příponou .cgi a umístěte jej do spustitelného adresáře. #!/bin/sh echo "Content-type:text/plain"; echo "" echo "Ahoj lidi!" echo $1; Vyzkoušejte si vytvoření CGI skriptu, který využívá interpret Perl. Skript pojmenujte s příponou .pl a umístěte jej do spustitelnhé adresáře. #!/usr/bin/perl print "Content-type:text/plain\n"; print "\n" print "Ahoj lidi!\n" |
CGI skripty SH, Perl |
V případě, že instalujete některý z interpretů skriptů, je nutné postupovat dle návodu, protože, žádný univerzální postup neexistuje. Pokud je interpret instalován jako modul WWW serveru, obvykle s sebou nese i informaci o typu (MIME) souboru, který interpretuje a často daké doplní do konfigurace WWW serveru informaci o příponách souboru (seznam přípon), které jsou daného MIME typu. Tak jako např. instalace PHP ve standardní distribuci FedoraCore 2. Instalátor PHP nainstaluje modul a do adresáře (obvykle /etc/httpd/conf.d/) přidá konfigurační soubor php.conf s následujícím obsahem: # # PHP is an HTML-embedded scripting language which attempts to make it # easy for developers to write dynamically generated webpages. # LoadModule php4_module modules/libphp4.so # # Cause the PHP interpreter to handle files with a .php extension. # AddType application/x-httpd-php .php # # Add index.php to the list of files that will be served as directory # indexes. # DirectoryIndex index.php Řádek LoadModule php4_module modules/libphp4.so udává, že má být načten modul Apache. Řádek AddType application/x-httpd-php .php udává, že soubory s příponou .php mají být MIME typu application/x-httpd-php, který výše uvedený modul zpracovává (to je explicitně uvedeno přímo v kódu modulu). |
Interpret jako modul WWW serveru |
V případě, že instalujete interpret, který bude s WWW serverem komunikovat přes CGI, obvykle musíte konfiguraci WWW serveru doplnit o následující kód. ScriptAlias /php-bin/ /usr/local/bin/ AddType application/x-httpd-php .php Action application/x-httpd-php /php-bin/php Řádek ScriptAlias /php-bin/ /usr/local/bin/ deklaruje virtuální adresář, který ukazuje na adresář, ve kterém se nachází CGI interpret (spustitelná aplikace) pro PHP kód. Řádek Action application/x-httpd-php /php-bin/php říká, že MIME typ application/x-httpd-php má být interpretován aplikací php ve virtuálním adresáři /php-bin/ |
Interpret jako CGI aplikace |
Konfigurace chování samotného interpretu skriptů závisí na daném interpretu. Zase neexistuje jednoduchý návod jak interpret konfigurovat. Vzhledem, k tomu, že máte zkušenosti s interpretem PHP skriptů, procvičíte si konfiguraci na tomto interpretu. |
Konfigurace chování interpretu |
KORESPONDENČNÍ ÚKOL 8 |
|
|
Nainstalujte interpret pro PHP. Konfiguraci v souboru php.ini změňte tak, aby:
Soubor php.ini zašlete k posouzení tutorovi. |
Konfigurace PHP |
SHRNUTÍ KAPITOLY CGI, INTERPRETI |
|
|
Víte, že interpret můžete nainstalovat ve třech různých úrovních ve vztahu k WWW serveru Umíte nainstalovat intrepret pro jazyk PHP Víte jak konfigurovat chování intrepretu pro jazyk PHP |
Shrnutí |
PRŮVODCE STUDIEM 5 |
|
|
Následující kapitola se zabývá otázkou optimalizace výkonu WWW serveru. |
Průchod modulem |