Program Personal Web Server obs│uguje aplikacje CGI. W temacie tym zamieszczono informacje administracyjne dotycz╣ce instalowania i konfigurowania aplikacji CGI na serwerze sieci Web. Og≤lne informacje dotycz╣ce programowania aplikacji CGI mo┐na znaleƒµ w Microsoft Development Library.
Programy CGI s╣ wykonywane, gdy serwer sieci Web odbiera adres URL zawieraj╣cy nazwΩ programu CGI i wszelkie parametry wymagane przez ten program. Je£li program CGI jest skompilowany w postaci pliku wykonywalnego (.exe), katalogowi, w kt≤rym znajduje siΩ ten program, trzeba przyznaµ uprawnienie Wykonanie, aby u┐ytkownicy mogli uruchomiµ ten program. Je£li program CGI jest napisany w postai skryptu, na przyk│ad skryptu jΩzyka Perl, katalogowi trzeba przyznaµ uprawnienie Wykonanie lub Skrypt. Aby u┐ywaµ uprawnienia Skrypt, interpreter skrypt≤w musi byµ oznaczony jako aparat skrypt≤w.
Dla u┐ytkownik≤w planuj╣cych projektowanie nowych aplikacji CGI firma Microsoft przygotowa│a kilka propozycji alternatywnych, kt≤re nale┐y rozwa┐yµ. Szybciej wykonywane s╣ aplikacje ISAPI. Por≤wnanie aplikacji CGI i ISAPI mo┐na znaleƒµ w temacie Architektura aplikacji ISAPI i aplikacji sieci Web. úatwiej projektuje siΩ aplikacje ASP. îrodowisko ASP jest szczeg≤lnie zalecane dla pocz╣tkuj╣cych programist≤w, poniewa┐ obs│ugiwanych jest w nim wiele rutynowych zada± tradycyjnie zwi╣zanych z pisaniem aplikacji CGI, takich jak analizowanie nag│≤wk≤w HTTP. WiΩcej informacji mo┐na znaleƒµ w temacie Active Server Pages.
Aby zainstalowaµ i skonfigurowaµ aplikacje CGI: Systemy Windows NT i Windows 95 nie zawieraj╣ interpreter≤w jΩzyk≤w Perl, SED ani AWK. Interpreter jΩzyka Perl jest dostΩpny w pakiecie Windows NT Resource Kit. Inne interpretery mo┐na otrzymaµ od innych dostawc≤w.
Je£li wybierzesz uprawnienie Skrypt, w arkuszu w│a£ciwo£ci katalogu musisz oznaczyµ interpreter skrypt≤w jako aparat skrypt≤w. Tylko interpretery oznaczone jako aparaty skrypt≤w mo┐na uruchamiaµ w tym katalogu. Pliki wykonywalne (pliki .dll i .exe) nie mog╣ byµ wykonywane bezpo£rednio; tzn. ┐╣danie przegl╣darki nie mo┐e uruchomiµ pliku wykonywalnego przez umieszczenie nazwy programu w adresie URL. U┐ycie uprawnienia Skrypt z opcj╣ Aparat skryptu umo┐liwia bezpieczne umieszczanie plik≤w zawarto£ci (takich jak pliki .htm lub .gif) w tym samym katalogu, co skrypt≤w CGI. Pliki zawarto£ci bΩd╣ wy£wietlane w przegl╣darce, a skrypty bΩd╣ wykonywane, ale nikt nie bΩdzie m≤g│ wykonaµ nieautoryzowanego programu, a polecenia skrypt≤w nie bΩd╣ wy£wietlane w przegl╣darce.
Program Personal Web Server mapuje rozszerzenia nazw plik≤w na interpreter. Na przyk│ad, je£li u┐ywasz skrypt≤w jΩzyka Perl przechowywanych w plikach z rozszerzeniem .pl, zamapuj rozszerzenie .pl na program, kt≤ry uruchamia skrypty jΩzyka Perl. Zamapuj pliki .bat i .cmd na interpreter polece± (Cmd.exe). Odpowiednie informacje mo┐na znaleƒµ w temacie Ustawianie mapowania aplikacji.
Je£li u┐ywasz uprawnie± NTFS, upewnij siΩ, ┐e wszyscy u┐ytkownicy, kt≤rzy bΩd╣ uruchamiaµ program maj╣ uprawnienie Wykonanie dla katalogu. Je£li witryna sieci Web akceptuje u┐ytkownik≤w anonimowych, upewnij siΩ, ┐e u┐ytkownik anonimowy (konto IUSR_nazwakomputera) ma uprawnienie Wykonaj.
Program Personal Web Server obs│uguje wiΩkszo£µ standardowych zmiennych £rodowiska serwera. Je£li masz zainstalowan╣ dokumentacjΩ SDK, odpowiednie informacje mo┐esz znaleƒµ w temacie GetServerVariable.
Je£li dany skrypt uzyskuje dostΩp do skryptu mapowanego na interpreter Cmd.exe uruchomiony na zdalnym serwerze, domy£lny katalog roboczy jest ustawiany na %SYSTEM32% na komputerze lokalnym. Domy£ln╣ warto£ci╣ %SYSTEM32% jest \Winnt\System32 (w systemie Windows NT) i \Win95\System (w systemie Windows 95 lub p≤ƒniejszym).
Ze wzglΩd≤w bezpiecze±stwa serwer sieci Web nie przekazuje znak≤w specjalnych interpretera polece± do mapowanej aplikacji CGI. Domy£lnie, nastΩpuj╣cych znak≤w nie mo┐na umieszczaµ w adresie URL wywo│uj╣cym aplikacjΩ CGI:
| ( , ; % < >
Choµ nie jest to zalecane, mo┐na umo┐liwiµ u┐ycie niekt≤rych znak≤w specjalnych, zmieniaj╣c warto£µ klucza AllowSpecialCharsInShell w rejestrze. WiΩcej informacji mo┐na znaleƒµ w temacie Wpisy us│ugi WWW.