1.7. Serwer WWW

Jeżeli chcemy tworzyć i testować aplikacje sieciowe wykorzystujące bazy danych za pomocą języków skryptowych, np. PHP czy Python, potrzebujemy środowiska testowego, na które składa się serwer WWW, interpreter języka skryptowego i system bazodanowy. Zestawy takiego oprogramowania określa się skrótami WAMP lub LAMP w zależności od wykorzystywanego systemu operacyjnego: W – Windows, L – Linux. Pozostałe litery rozwija się najczęściej jako:

Wymienionego oprogramowanie to najpopularniejsze, ale nie jedyne rozwiązania. Dostępnych jest wiele innych, równie dobrych serwerów czy baz danych. Warto też wiedzieć, że instalacja i konfiguracja kompletu wymienionych programów nie jest zazwyczaj konieczna. Np. jeżeli tworzymy aplikacje sieciowe w Pythonie wystarcza dedykowana biblioteka (np. Flask) lub framework (np. Django), które zapewniają serwer HTTP i obsługę wbudowanej bazy SQLite.

1.7.1. Linux

W systemie Debian i pochodnych (Ubuntu, Linux Mint itd.) lub na Arch Linuksie można zainstalować serwer Apache2 i interpreter PHP za pomocą dedykowanych menedżerów pakietów, czyli odpowiednio:

~$ sudo apt-get install apache2 php7.0 php7.0-gd php7.0-sqlite3 php7.0-curl libapache2-mod-php7.0
~# pacman -S apache php php-gd php-sqlite php-curl libapache-mod-php7

Ostrzeżenie

Nazwy pakietów dla dystrybujcji opartych na Debianie (Ubuntu itd.) różnią się od podanych. Właściwe nazwy można sprawdzić wydając w terminalu polecenie: apt-get search php | grep php.

Podstawowa konfiguracja sprowadza się do uaktywnienia odpowiednich modułów:

~$ sudo a2enmod userdir rewrite
~$ sudo service apache2 restart

~# a2enmod userdir rewrite
~# systemctl restart httpd

– i odblokowania możliwości wykonywania skryptów w katalogach domowych użytkowników poprzez zakomentowanie następujących linii z pliku /etc/apache2/mods-available/php7.0.conf (Debian) lub /etc/httpd/mods-available/php7.conf (Arch):

# To re-enable PHP in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
#<IfModule mod_userdir.c>
#    <Directory /home/*/public_html>
#        php_admin_flag engine Off
#    </Directory>
#</IfModule>

Tworzone strony umieszczamy w podkatalogu public_html katalogu domowego. Wywołujemy je wpisując w przeglądarce adres: 127.0.0.1/~użytkownik – powinny zostać zwrócone pliki index.php lub index.html, o ile istnieją. Jeżeli mamy kilka projektów, umieszczamy je w podkatalogach, np. public_html/projekt1 i wywołujemy: 127.0.0.1/~użytkownik/projekt1.

1.7.2. UwAmp w Windows

W systemie Microsoftu najłatwiej skorzystać z gotowego zestawu WAMP. Proponujemy UwAmp. Po wejściu na stronę klikamy Download, a następnie link o nazwie Download Exe/Install.

../../_images/uwamp01.jpg

Ostrzeżenie

Do poprawnego działania Apache’a wymagana jest biblioteka Microsoftu Visual C++ 2012 Redistributable (VC++ 11.0) w wersji 32-bitowej (x86), z kolei do PHP 7 musimy zainstalować Visual C++ 2015 Redistributable.

Pobieramy wymienione wyżej biblioteki i instalujemy je na początku.

../../_images/vcredist2012.jpg
../../_images/vcredist2015.jpg

Następnie uruchamiamy instalację UwAmpa. Jako miejsce instalacji wybieramy główny katalog wybranego dysku, C:, D: itp.:

../../_images/uwamp02.jpg

Po zainstalowaniu i uruchomieniu aplikacji UwAmp zapora systemowa może poprosić o odblokowanie portów serwera www i bazy danych. Godzimy się, wybierając opcję dla sieci prywatnych i domowych.

../../_images/uwamp04_mysqld.jpg
../../_images/uwamp05_apache.jpg

Serwerami i narzędziami zarządzamy za pomocą wygodnego okna:

../../_images/uwamp06.jpg

Informacja

Korzystając z powyższego okna wybierz wersję PHP 7.

Serwery www (Apache2) i bazy danych (MySQL) startowane są automatycznie. Jeżeli nie korzystamy z serwera MySQL, możemy go zatrzymać klikając niebieską strzałkę obok przycisku “Stop” i wybierając go listy. Do obsługi baz SQLite dołączono bardzo wygodny interfejs graficzny SQLite Browser.

Strony czy projekty umieszczamy w katalogu www folderu, w którym zainstalowaliśmy UwAmpa, np. w C:\\UwAmp\www. W przeglądarce wpisujemy adres localhost lub localhost/podkatalog, jeżeli strony umieściliśmy w jakimś podkatalogu.

../../_images/uwamp07.jpg

Utworzony:2018-02-28 o 20:47 w Sphinx 1.4.5