Katalog książek

Wydawnictwo Helion

Helion SA
ul. Kościuszki 1c
44-100 Gliwice
tel. (32) 230-98-63




© Helion 1991-2014

Lauret zaufanych opinii
mod_perl. Podręcznik programisty

mod_perl. Podręcznik programisty

Autorzy: , ,

mod_perl. Podręcznik programisty
Ocena:
   5/6  Opinie  (1)
Stron: 564
Ksiazka drukowana Druk (oprawa: miękka)

Być może Perl jest najlepszym językiem służącym do pisania skryptów CGI, ale skrypty CGI nie są najlepszym sposobem tworzenia aplikacji internetowych. Potrzeba większej wydajności, lepszej integracji z serwerem WWW i pełniejszego wykorzystania jego możliwości doprowadziła do stworzenia modułu mod_perl. Pozwala on na pisanie modułów serwera Apache w Perlu i na pełny dostęp do funkcji API Apache"a z poziomu Perla.

mod_perl jest bardzo rozbudowany, dzięki czemu daje programiście ogromne możliwości. Książka "mod_perl. Podręcznik programisty" będzie nieocenioną pomocą w poznawaniu jego potencjału. Nauczysz się z niej podstaw mod_perla, a gdy już je opanujesz, poznasz tajniki pisania dużych i skomplikowanych aplikacji.

W książce opisano między innymi:

  • Instalację i konfigurację mod_perla
  • Komunikację mod_perla z Apache
  • Działania na adresach URL
  • Obsługę plików w środowisku mod_perla
  • Tworzenie własnych aplikacji w oparciu o mod_perla
  • Osiągania maksymalnej wydajności aplikacji używających mod_perla
  • Dodatkowe moduły współpracujące z mod_perlem
Po przeczytaniu tej książki uzyskasz nową perspektywę na programowanie aplikacji sieciowych w Perlu. Programiści Slashdot.org, Internet Movie Database i Wired wybrali mod_perl jako platformę do tworzenia aplikacji. Może i Ty powinieneś pójść w ich ślady?
Podziękowania (9)
O Autorach (12)
Przedmowa (13)
Wprowadzenie (15)
Część I Instalacja i konfiguracja (19)
Rozdział 1. Instalacja modułu mod_perl (21)
  • Wprowadzenie (21)
  • 1.1. Dystrybucja binarna dla Uniksa (22)
  • 1.2. Instalacja w systemie Windows (25)
  • 1.3. Instalacja w systemie Mac OS X (27)
  • 1.4. Kompilacja w systemie Unix (27)
  • 1.5. Kompilacja w systemie Windows (31)
  • 1.6. Kompilacja w systemie Mac OS X (35)
  • 1.7. Kompilacja modułu mod_perl jako biblioteki dzielonej (37)
  • 1.8. Testowanie instalacji (38)
  • 1.9. Zmiana katalogów instalacji serwera Apache (39)
  • 1.10. Dodawanie modułu mod_perl do działającego serwera Apache (40)
  • 1.11. Ponowne użycie opcji kompilacji (40)
  • 1.12. Odtwarzanie instalacji modułu mod_perl (41)
  • 1.13. Instalacja modułu mod_perl na wielu komputerach (42)
  • 1.14. Sprawdzanie istniejącego serwera (45)
  • 1.15. Instalacja modułów serwera Apache z archiwum CPAN (46)
  • 1.16. Śledzenie rozwoju modułu mod_perl (47)
  • 1.17. Więcej niż dostęp przez CVS (48)
  • 1.18. Kompilacja modułu mod_perl przy użyciu innej wersji Perla (50)
Rozdział 2. Konfigurowanie modułu mod_perl (53)
  • Wprowadzenie (53)
  • 2.1. Przenoszenie skryptów CGI (53)
  • 2.2. Moduł Apache::Registry (55)
  • 2.3. Skrypt startup.pl (58)
  • 2.4. Dzielenie przestrzeni nazw w środowisku Apache::Registry (61)
  • 2.5. Wczesne ładowanie skryptów w środowisku Apache::Registry (62)
  • 2.6. Ustawianie zmiennych środowiskowych CGI (63)
  • 2.7. Ustawianie innych zmiennych środowiskowych (64)
  • 2.8. Ustawianie opcji interpretera Perla (65)
  • 2.9. Bloki BEGIN i END w skrypcie startup.pl (66)
  • 2.10. Zarządzanie własnymi bibliotekami (67)
  • 2.11. Trwałe połączenia z bazą danych (69)
  • 2.12. Wcześniejsze nawiązywanie połączeń (70)
  • 2.13. Nietrwałe połączenia do bazy danych w środowisku Apache::DBI (72)
  • 2.14. Ustawianie zmiennych specyficznych dla modułu mod_perl (73)
  • 2.15. Ustawianie bardziej skomplikowanych zmiennych (74)
  • 2.16. Dynamiczna konfiguracja serwera Apache (75)
  • 2.17. Zachowywanie kolejności w sekcjach <Perl> (77)
  • 2.18. Używanie opcji w wierszu poleceń (78)
  • 2.19. Uruchamianie podwójnego serwera (79)
  • 2.20. Używanie modułu mod_proxy do przekazywania żądań do serwera Apache z modułem mod_perl (80)
  • 2.21. Używanie modułu mod_proxy_add_forward (80)
Część II Interfejs API modułu mod_perl (83)
Rozdział 3. Obiekt żądania (87)
  • Wprowadzenie (87)
  • 3.1. Obiekt żądania (87)
  • 3.2. Komunikat żądania HTTP (89)
  • 3.3. Żądanie klienta (91)
  • 3.4. Dostęp do nagłówków żądania (92)
  • 3.6. Dane wysłane metodą POST (97)
  • 3.7. Obsługa cookies (98)
  • 3.8. Obsługa plików wysyłanych na serwer (100)
  • 3.9. Ustawianie nagłówków odpowiedzi serwera (103)
  • 3.10. Sterowanie pamięcią podręczną (105)
  • 3.11. Wysyłanie nagłówków odpowiedzi serwera (106)
  • 3.12. Ustawianie statusu odpowiedzi (108)
  • 3.13. Ustawianie nagłówków w przypadku błędu (111)
  • 3.14. Nagłówki o wielu wartościach (113)
  • 3.15. Żądania wewnętrzne (115)
  • 3.16. Ustawianie nagłówków żądania wewnętrznego (117)
  • 3.17. Rozpoznawanie żądań wewnętrznych (118)
  • 3.18. Metoda HTTP żądania (118)
  • 3.19. Dostęp do obiektu żądania z podprogramu XS (120)
Rozdział 4. Komunikacja z serwerem Apache (127)
  • Wprowadzenie (127)
  • 4.1. Obiekt Apache::Server (127)
  • 4.2. Symulowanie dyrektyw IfModule i IfDefine (130)
  • 4.3. Dostęp do dyrektyw ServerRoot i DocumentRoot (132)
  • 4.4. Zapis do dziennika błędów (134)
  • 4.5. Dostęp do dyrektywy ErrorLog (136)
  • 4.6. Wartość LogLevel (138)
  • 4.7. Obiekt Apache::Connection (140)
  • 4.8. Zdalne adresy IP i nazwy serwerów (141)
  • 4.9. Wykrywanie zerwania połączenia (143)
  • 4.10. Zamykanie procesu potomnego serwera Apache (145)
Rozdział 5. Przetwarzanie adresów URI (149)
  • Wprowadzenie (149)
  • 5.1. Żądany adres URI (150)
  • 5.2. Określanie dyrektywy <Location> dla adresu URI (152)
  • 5.3. Zmiana żądanego adresu URI (155)
  • 5.4. Konstruowanie nowego adresu URI (157)
  • 5.5. Kodowanie znaków specjalnych w adresie URI (159)
  • 5.6. Wymuszenie typu MIME za pomocą adresu URI (161)
  • 5.7. Pobieranie zawartości żądania wewnętrznego (162)
  • 5.8. Użycie klasy Apache::Util poza środowiskiem modułu mod_perl (166)
Rozdział 6. Obsługa plików (169)
  • Wprowadzenie (169)
  • 6.1. Tworzenie uchwytów plików (170)
  • 6.2. Tworzenie plików tymczasowych (172)
  • 6.3. Wysyłanie całego pliku (173)
  • 6.4. Wczytywanie zawartości plików do zmiennych (176)
  • 6.5. Pobieranie informacji o żądanym pliku (176)
  • 6.6. Nagłówki warunkowe (180)
  • 6.7. Żądania fragmentów plików (183)
  • 6.8. Nagłówki związane z datami (187)
  • 6.9. Opróżnianie buforów wyjściowych (188)
  • 6.10. Przekierowanie uchwytów plików wyjściowych (190)
Rozdział 7. Tworzenie programów obsługi (193)
  • Wprowadzenie (193)
  • 7.1. Tworzenie programu obsługi (194)
  • 7.2. Konfiguracja programów obsługi (197)
  • 7.3. Dodawanie niewielkich programów obsługi (199)
  • 7.4. Przygotowanie modułu do publikacji (201)
  • 7.5. Tworzenie archiwum programu TAR (202)
  • 7.6. Tworzenie binarnej dystrybucji PPM (204)
  • 7.7. Testowanie modułu (207)
  • 7.8. Własne dyrektywy konfiguracyjne (214)
  • 7.9. Rozszerzanie prototypów własnych dyrektyw (223)
  • 7.10. Łączenie własnych dyrektyw (225)
  • 7.11. Zastępowanie dyrektyw rdzeniowych (231)
  • 7.12. Dodawanie znaczników serwera (236)
  • 7.13. Publikowanie modułu w archiwum CPAN (237)
Rozdział 8. Współpraca z programami obsługi (239)
  • Wprowadzenie (239)
  • 8.1. Wykrywanie zmian programów obsługi (239)
  • 8.2. Dzielenie danych wewnątrz procesu potomnego (241)
  • 8.3. Tworzenie dzielonego bufora (244)
  • 8.4. Zachowywanie stanu (247)
  • 8.5. Wewnętrzne przekierowania (251)
  • 8.6. Tworzenie własnych stron o błędach (254)
  • 8.7. Przywracanie domyślnych stron o błędach (257)
  • 8.8. Łańcuchy programów obsługi (259)
  • 8.9. Łańcuchy programów obsługi w języku C (261)
  • 8.10. Dostęp do zmiennych środowiskowych (264)
  • 8.11. Dzielenie danych między fazami (265)
  • 8.12. Określanie aktualnej fazy żądania (268)
  • 8.13. Dane konfiguracyjne modułu Perla (269)
  • 8.14. Dane konfiguracyjne modułu języka C (270)
Rozdział 9. Dostrajanie serwera Apache i modułu mod_perl (275)
  • Wprowadzenie (275)
  • 9.1. Zbieranie podstawowych informacji o serwerze (277)
  • 9.2. Tworzenie raportu zużycia pamięci (281)
  • 9.3. Zużycie pamięci przez procesy serwera Apache (283)
  • 9.4. Bardziej szczegółowe informacje o zużyciu pamięci przez procesy serwera (284)
  • 9.5. Zużycie pamięci przez moduły Perla (286)
  • 9.6. Redukcja narzutu przy imporcie modułów (288)
  • 9.7. Zmniejszanie całkowitego zużycia pamięci (289)
  • 9.8. Zwiększanie obszaru pamięci dzielonej (291)
  • 9.9. Regulacja liczby procesów potomnych (293)
  • 9.10. Ograniczanie wzrostu zużycia pamięci przez procesy (294)
  • 9.11. Zamykanie niekontrolowanych procesów (296)
  • 9.12. Profilowanie programów obsługi (298)
  • 9.13. Znajdowanie wąskich gardeł wydajności (299)
  • 9.14. Dostrajanie wydajności serwera (301)
  • 9.15. Serwer Apache jako serwer proxy (305)
  • 9.16. Używanie programu uruchomieniowego Perla z modułem mod_perl (308)
  • 9.17. Wyszukiwanie błędów w skryptach Apache::Registry (310)
  • 9.18. Redukcja narzutu uruchomieniowego (311)
  • 9.19. Wyszukiwanie błędów przy naruszeniach segmentacji (313)
Rozdział 10. Programowanie obiektowe przy użyciu modułu mod_perl (315)
  • Wprowadzenie (315)
  • 10.1. Tworzenie klas i obiektów (316)
  • 10.2. Dziedziczenie metod (318)
  • 10.3. Tworzenie obiektowych programów obsługi (321)
  • 10.4. Używanie obiektowych programów obsługi (323)
  • 10.5. Dziedziczenie po klasie Apache (326)
  • 10.6. Dziedziczenie po klasie Apache przy użyciu modułów XS (328)
  • 10.7. Dziedziczenie po klasie Apache::Registry (330)
  • 10.8. Dziedziczenie po klasie Apache::Request (333)
Część III Oprogramowywanie cyklu życiowego serwera Apache (339)
Rozdział 11. PerlInitHandler (345)
  • Wprowadzenie (345)
  • 11.1. Przetwarzanie każdego żądania (346)
  • 11.2. Przetwarzanie każdego żądania w danej dyrektywie zbiorczej (347)
  • 11.3. Mierzenie czasu żądania (348)
  • 11.4. Przerywanie cyklu obsługi żądania (350)
Rozdział 12. PerlTransHandler (353)
  • Wprowadzenie (353)
  • 12.1. Żądania pliku favicon.ico (354)
  • 12.2. Rozpoznawanie serwerów wirtualnych w żądaniach (355)
  • 12.3. Identyfikatory sesji w adresach URL (358)
  • 12.4. Współdzielenie dyrektywy DocumentRoot (360)
  • 12.5. Sterowanie wbudowanym serwerem proxy (362)
  • 12.6. Redukcja wywołań funkcji stat() (364)
Rozdział 13. PerlAccessHandler, PerlAuthenHandler i PerlAuthzHandler (371)
  • Wprowadzenie (371)
  • 13.1. Prosta kontrola dostępu (372)
  • 13.2. Ograniczanie dostępu "chciwym" klientom (375)
  • 13.3. Identyfikacja podstawowa (376)
  • 13.4. Ustawianie danych użytkownika (379)
  • 13.5. Warunkowa identyfikacja (381)
  • 13.6. Autoryzacja użytkownika (383)
  • 13.7. Tworzenie własnego mechanizmu autoryzacji (386)
  • 13.8. Identyfikacja przy użyciu funkcji skrótu (392)
Rozdział 14. PerlTypeHandler i PerlFixupHandler (401)
  • Wprowadzenie (401)
  • 14.1. Przywracanie domyślnego programu obsługi generowania zawartości (402)
  • 14.2. Wybór programu obsługi na podstawie rozszerzenia nazwy pliku (404)
  • 14.3. Zmiana typu MIME i programu obsługi (409)
  • 14.4. Zmiana domyślnych typów MIME (413)
  • 14.5. Własny mechanizm buforujący (414)
Rozdział 15. PerlHandler (421)
  • Wprowadzenie (421)
  • 15.1. Podstawowy PerlHandler (422)
  • 15.2. Zarządzanie wieloma programami obsługi typu PerlHandler (425)
  • 15.3. Wysyłanie poczty (427)
  • 15.4. Filtrowanie generowanej zawartości (431)
  • 15.5. Zapobieganie atakom skryptowym (435)
  • 15.6. Moduł Text::Template (439)
  • 15.8. Moduł Apache::ASP (445)
  • 15.9. Pakiet Template Toolkit (450)
  • 15.12. Generowanie dokumentów XML (461)
  • 15.13. Generowanie ogólnych dokumentów XML (464)
  • 15.14. Dokumenty XML i arkusze XSLT (467)
  • 15.15. Pakiet AxKit (470)
  • 15.16. Tworzenie serwera SOAP (472)
Rozdział 16. PerlLogHandler i PerlCleanupHandler (481)
  • Wprowadzenie (481)
  • 16.1. Dziennik w bazie danych (482)
  • 16.2. Dziennik w zwykłym pliku (485)
  • 16.3. Zmiana wiersza żądania (488)
  • 16.4. Zapisywanie niestandardowych informacji (489)
  • 16.5. Rejestrowanie warunkowe (490)
  • 16.6. Przechwytywanie błędów (491)
Rozdział 17. PerlChildInitHandler, PerlChildExitHandler, PerlRestartHandler i PerlDispatchHandler (499)
  • Wprowadzenie (499)
  • 17.1. Konfiguracja kodu poza obsługą żądania (501)
  • 17.2. Uruchamianie kodu podczas restartu serwera (503)
  • 17.3. Jednokrotne ładowanie konfiguracji (504)
  • 17.4. Przeładowywanie skryptów Registry w procesie nadrzędnym (506)
  • 17.5. Identyfikacja procesów potomnych (507)
  • 17.6. Wczesne łączenie ze źródłem danych (509)
  • 17.7. Śledzenie użycia modułów Perla (511)
  • 17.8. Zastępowanie programów obsługi (512)
Dodatki (517)
Dodatek A Dostępne punkty zaczepienia i opcje kompilacji modułu mod_perl (519)
  • Punkty zaczepienia modułu mod_perl (519)
  • Opcje kompilacji modułu mod_perl (523)
Dodatek B Dostępne stałe (531)
  • Wartości zwracane przez programy obsługi (531)
  • Stałe określone przez protokół HTTP (531)
  • Stałe używane przez programy obsługi dyrektyw (533)
  • Stałe sterujące zapisem w dzienniku (536)
  • Stałe serwera (536)
Dodatek C Zasoby związane z modułem mod_perl (537)
  • Zasoby sieciowe (537)
  • Książki (540)
Skorowidz (543)
6
(0)
5
(1)
4
(0)
3
(0)
2
(0)
1
(0)

Liczba ocen: 1

Średnia ocena
czytelników

  


okladka
  Ocena : 5 

Przydatna książka dla osób pragnących zoptymalizować wydajność serwera Apache i programików napisanych w Perlu.