CGI Ladič
Jedná se o dva velmi jednoduché programy, usnadňující ladění CGI programů.
Aktuální verzi získáte na adrese
http://www.nti.tul.cz/~satrapa/sw/emcgi/
.
cgivars
Jednodušší je cgivars
. Jedná se o CGI program, který jako
výsledek své činnosti vypíše kompletní informace o prostředí, v němž pracuje -
seznam všech proměnných prostředí a jejich hodnot a pokud jsou mu data
předávána metodou POST
, také obsah standardního vstupu.
Použijte jej, pokud se chcete přesvědčit o podobě dat, přicházejících do
vašeho CGI programu. Stačí umístit cgivars
do stejného adresáře a
postarat se o to, aby byl příslušným WWW serverem spouštěn jako CGI program.
Pak v lokátoru k vašemu programu nahraďte jeho jméno jménem programu
cgivars
a můžete začít zkoumat, jaká data váš program vlastně
dostává.
Distribuce programu cgivars je jednotná pro všechny operační systémy. Program je napsán v jazyce Perl.
emcgi
Značnou nepříjemností při ladění CGI programů je, že autor nemá přístup ke konkrétním výsledkům programu. Ty vidí jen server a pokud nejsou v pořádku, přetransformuje je na jakési chybové hlášení. To často neposkytuje dostatek informací k tomu, aby se dala identifikovat chyba.
Naštěstí je prostředí CGI velmi jednoduché a nedá velkou práci je simulovat.
Stačí nastavit proměnné prostředí tak, jak je nastavil WWW server a případně
(předávají-li se data metodou POST
) poskytnout odpovídající
standardní vstup.
Program emcgi
vám usnadňuje právě tuto činnost. Uložte jej do
stejného adresáře s laděným programem a zajistěte, aby jej server akceptoval
jako CGI program. Poté v lokátoru nahraďte jméno laděného programu jménem
emcgi
a položte dotaz. Odpovědí bude zdrojový text dávkového
souboru, který nastaví stejné prostředí, jaké by od serveru dostal laděný
program. Stačí tuto odpověď uložit do souboru (opět do stejného adresáře) a
spustit. Před spuštěním je však třeba ještě provést jednu drobnost: nastavit
proměnnou prostředí CGIPROGRAM
na jméno laděného programu.
Dávkový soubor ve svém těle nastaví příslušné proměnné prostředí a spustí
program, uvedený v proměnné prostředí CGIPROGRAM
. Pokud byl dotaz
položen metodou POST
, přesměruje mu do standardního vstupu soubor,
který vytvořil při zodpovídání dotazu a do nějž uložil data od uživatele.
Distribuce programu existuje ve dvou variantách - pro operační systémy Unix a MS-DOS (měl by pracovat i v prostředí MS Windows).