Serwer WWW

WAMP

WAMP (Windows - Apache - MySQL - PHP) to zestaw oprogramowania stanowiący kompletną platformę serwerową WWW (dla systemu Linux - LAMP). Jednym z pakietów typu WAMP jest VertrigoServ. Ostatnia wersja (2.29) pochodzi z października 2012 roku. VertrigoServ zawiera aktualne komponenty i na tle innych zestawów (np. XAMPP, WebServ, Krasnal) jest bardzo pozytywnie oceniany przez użytkowników. Z witryny tego pakietu pobierz (np. na Pulpit) plik Vertrigo_229.exe (ok. 13 MB) i uruchom. Na komputerze zostanie zainstalowany lokalny serwer WWW, a w istocie kompletny zestaw składajacy się z serwera Apache, bazy danych MySQL i środowiska języka PHP (nie tylko - będzie także jeszcze kilka innych, przydatnych narzędzi).

Po uruchomieniu przy pomocy ikony 'VertrigoServ' na pulpicie, zestaw jest gotowy do pracy i w podstawowych zastosowaniach nie wymaga żadnych zmian konfiguracji. Tak, czyli bez problemów, będzie zapewne w Windows XP. W systemie Vista może się pojawić komunikat: "Serwer bazy danych MySQL nie działa poprawnie. Sprawdź czy port na którym pracuje serwer (3306) jest wolny, poprawność plików konfiguracyjnych, ustawienia firewalla" i zestaw będzie działać, ale bez MySQL. Najprostszym rozwiązaniem jest trochę mniej wygodne uruchamianie pakietu: ikonę 'VertrigoServ' trzeba kliknąć prawym klawiszem myszki i wybrać "Uruchom jako administrator". Jednak gdyby to nie rozwiązywało problemu, nie ma rady, przez 'Panel sterowania' i 'Centrum zabezpieczeń' trzeba się dostać do 'Zapory systemu Windows' i tam, w karcie 'Wyjątki' dodać program v_mysqld, znajdujący się w lokacji
  'C:\Program Files\VertrigoServ\Mysql\bin\v_mysqld.exe'
W przypadku Windows 7, przy pierwszym uruchomieniu Vertrigo Serv, zapora systemu sama wygeneruje dwa okna 'Alert zabezpieczeń systemu Windows' dla zablokowanych programów 'v_apache.exe' (Apache HTTP Server) i 'v_mysqld.exe' (MySQL), pozwalając jednocześnie na zdjęcie tej blokady.
Trzeba pamiętać że uruchomienie serwera może się okazać niemożliwe jeśli w systemie działa już popularny komunikator Skype. Serwer Apache pracuje na porcie 80, a Skype często ma włączoną opcję korzystania z tego portu jako alternatywnego. Trzeba to "odznaczyć" w konfiguracji połączeń programu Skype.

W przypadku standardowej instalacji VertrigoServ (a rozsądnie jest taką zachować) katalogiem "domowym" dla plików .html (.php) jest katalog 'www':
  C:\Program Files\VertrigoServ\www
Jeli Vertrigo pracuje w Windows 7 w wersji 64-bitowej, będzie to lokacja w folderze przeznaczonym dla programów 32-bitowych:
  C:\Program Files (x86)\VertrigoServ\www
Adresem lokalnego serwera jest:
  http://127.0.0.1/
lub:
  http://localhost/
Po wpisaniu tego adresu w przeglądarce WWW zostanie uruchomiona startowa strona serwera (index.php), jaka po instalacji znajduje się w katalogu 'www'. Można później zmienić nazwę tego pliku aby w katalogu 'www' umieścić własny dokument startowy, lub utworzyć podkatalog dla własnych plików.

 

Po uruchomieniu VertrigoServ, w pasku zadań pojawia się ikonka serwera otwierająca panel, który pozwala uruchamiać różne funkcje i moduły zestawu, oraz dostarcza bardzo wielu informacji o stanie programów pakietu i umożliwia wprowadzanie zmian w ich konfiguracji. Przejrzyj dokładnie wszystkie opcje tego panelu, dostępne ustawienia, pliki konfiguracyjne i informacje widoczne po wybraniu opcji "Pomoc". Z tego miejsca można też ("Strona lokalna") otworzyć w przeglądarce startową stronę "powitalną" (jeśli nie została zmieniona). Na stronie tej, w oknie "Narzędzia i linki" wybierz "Zobacz stronę phpinfo()".

Funkcja phpinfo() wyświetla wszystkie szczegóły konfiguracyjne środowiska PHP oraz wiele informacji dotyczących samego serwera WWW. Przeglądnij udostępnione informacje, zwróć szczególną uwagę na sekcję PHP Variables. W pasku adresu przeglądarki zmodyfikuj wywołanie skryptu 'phpinfo.php' tak, by odbyło się ono z dowolnymi parametrami, np.:
  http://127.0.0.1/inc/phpinfo.php?imie=Jan&Nazwisko=Kowalski&id=12345
Będzie to równoważne przekazaniu do skryptu (metodą GET) trzech danych tekstowych. Sprawdź nowe pozycje, które pojawiły się w sekcji PHP Variables.

Przy pomocy Web Developera wyłącz pamięć podręczną przeglądarki. Włącz okno narzędzia Firebug, a następnie wybierz opcję Sieć i włącz panel sieci, jeśli jest wyłączony. Z tego miejsca także można manipulować pamięcią podręczną (bufor przeglądarki). Otwórz ponownie stronę startową VertrigoServ (http://127.0.0.1/). Przeanalizuj wszystkie udostępnione informacje o kolejnych żądaniach wysłanych do serwera. Dodatkowe szczegóły dotyczące czasów stają się widoczne po ustawieniu kursora myszki na paskach w obszarze Oś czasu. Sprawdź prezentowane informacje po odświeżaniu strony, także w przypadku włączonej pamięci podręcznej. Włączenie przycisku Trwałość pozwala zachować kolejne rezultaty. W podobny sposób zbadaj wywołanie 'phpinfo.php' bez parametrów i z parametrami. Jeśli niepokoisz się dziwnymi parametrami przy odwołaniach do obrazków (logo PHP i logo Zend), spróbuj uruchomić 'phpinfo' z parametrem np. takim:
  .../phpinfo.php?=PHPE9568F36-D428-11d2-A769-00AA001ACF42
To "Easter Egg", a właściwie jedno z możliwych "wielkanocnych jaj" - żart autorów PHP, który normalnie ujawnia się 1 kwietnia (obok jest link "Easter Egg w PHP").

AJAX - Podstawy

Sprawdź przykłady

Sprawdź funkcjonowanie kolejnych przykładów ajax1.html ... ajax9.html. Przeanalizuj ich działanie posługując się narzędziem Firebug i jego panelem Sieć, przy wyłączonym buforze (pamięci podręcznej) przeglądarki. Zauważ że w widoku Wszystko pojawiaja się wszystkie wysłane żądania, ale teraz można obserwować osobno żądania HTML (widok HTML) i żądania AJAX (widok XHR). Sprawdź szczegóły wszystkich żądań, a przede wszystkim ich rezultaty, pokazane w karcie Odpowiedź.

Wykorzystaj Firebuga w inny jeszcze sposób. Otwórz panel HTML i badaj strukturę dokumentów, obserwując jej zmiany po otrzymaniu danych z serwera.

Przekonaj się na własne oczy, dlaczego twórcy serwisów bazujących na intensywnie wykorzystywanej technice AJAX mają niespokojny sen. Przy pomocy Web Developera wyłącz chwilowo obsługę JavaScript w przeglądarce i sprawdź działanie przykładowych stron.

Zmieniaj i testuj...

Pobierz Pliki Cw3 i rozpakuj. Pliki w katalogu ajax ulokuj tak, aby były dostępne dla lokalnego serwera VertrigoServ, a więc najlepiej w .../www/ajax, czyli pod adresem:
  http://127.0.0.1/ajax/
Sprawdź działanie ajaksowych stron z lokalnym serwerem. Dla wybranych przykładów wprowadzaj dowolne modyfikacje i obserwuj rezultaty, wykorzystując także możliwości Firebuga.

Zadanie 3

Stronę ajax9.html (albo jeszcze lepiej - jakąś jej modyfikację lub bardziej zaawansowane rozwinięcie według własnego pomysłu) należy przebudować do postaci dokumentu o sensownej strukturze opartej na blokach (<div>). Jako wstępny szablon można wykorzystać dostępny tutaj dokument test.html, lub inną, własną konstrukcję podobnego typu. Stworzona strona powinna być poprawnym dokumentem w języku XHTML 1.0 Strict, z optymalnym wykorzystaniem stylów CSS. Celowe jest usunięcie kodu JavaScript z dokumentu, na rzecz odwołania do tego kodu zapisanego w zewnętrznym pliku.