Konfigurowanie aplikacji CGI

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:
  1. Ustaw katalog dla program≤w CGI. Dla dodatkowego zabezpieczenia nale┐y odseparowaµ programy CGI od plik≤w zawarto£ci. Nie ma konieczno£ci nazywania tego katalogu Cgi-bin, ale mo┐na tak go nazwaµ. Odpowiednie informacje mo┐na znaleƒµ w temacie Tworzenie katalog≤w wirtualnych.
  2. Je£li programy CGI s╣ skryptami, zainstaluj odpowiedni interpreter skrypt≤w. Na przyk│ad, aby uruchamiaµ skrypty jΩzyka Perl, trzeba zainstalowaµ interpreter jΩzyka Perl.
  3. 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.

  4. Je£li programy CGI s╣ plikami .exe przyznaj katalogowi uprawnienie Wykonanie. Je£li programy CGI s╣ skryptami mo┐esz przyznaµ katalogowi uprawnienie Wykonaj lub Skrypt. Odpowiednie informacje mo┐na znaleƒµ w temacie Kontrola dostΩpu.
  5. 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.

  6. Dla skrypt≤w CGI utw≤rz mapowanie aplikacji miΩdzy rozszerzeniem nazwy pliku a interpreterem skryptu.
  7. 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.

  8. Ustaw uprawnienia NTFS.
  9. 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.


© 1998 Microsoft Corporation. Wszelkie prawa zastrze┐one.