Apache to najczęściej wykorzystywany serwer HTTP w sieci Internet. Dostępny dla wielu systemów operacyjnych m.in. UNIX, GNU/Linux, BSD, OS X czy Microsoft Windows. W sierpniu 2015 jego udział wśród serwerów wynosił ponad 37%. W połączeniu z interpreterem języka skryptowego PHP i bazą danych MySQL, Apache stanowi jedno z najczęściej spotykanych środowisk w firmach oferujących miejsce na serwerach sieciowych.
To tyle jeżeli chodzi o wstęp, teraz czas na działanie. Zakładam, że posiadasz już zainstalowane i zaktualizowane Ubuntu?
Ten krótki poradnik kierowany jest do osób które dopiero zaczynają swoją przygodę z systemami unixowymi, ma również za zadanie pokazać jak działa serwer Apache i gdzie znajdują się jego najważniejsze pliki konfiguracyjne. Kluczem nie jest skopiowanie i wklejenie komend w terminalu, a zrozumienie zasady funkcjonowania środowiska w którym chcemy pracować. Dlatego zachęcam do zapoznania się z obszerną dokumentacją i samodzielnej pracy.
Aby zainstalować serwer wydaj w konsoli poniższe polecenie (jako użytkownik uprzywilejowany):
apt -y install apache2
Gratulacje, właśnie zainstalowałeś serwer Apache. Wpisz w przeglądarce IP Twojego serwera i sprawdź rezultat.
Jak sprawdzić IP serwera? Wydaj w konsoli poniższe polecenie:
ifconfig
Została nam jeszcze do przeprowadzenia konfiguracja serwera dla środowiska produkcyjnego, zatem czas działać! Na początek musimy edytować plik security.conf np. w edytorze nano.
Edytor nano jest prostym edytorem tekstu. Jego podstawowe polecenia wypisane są w dolnej części konsoli. Zapis „^O” oznacza, że wywołanie funkcji „WriteOut” (zapis pliku) odbywa się przez przytrzymanie klawisza Control (CTRL) i przyciśnięcie litery O.
nano /etc/apache2/conf-enabled/security.conf
Przechodzimy do linii 25 i zmieniamy token z OS na Prod. Pozycję kursora możemy sprawdzamy poprzez CTRL+C. Zapisujemy plik CTRL+O i wychodzimy CTRL+X.
Warto wiedzieć! ServerTokens to ukrycie informacji w nagłówkach http, które wysyłane są przez serwer. Tak zwany token serwera może przyjąć sześć form:
ServerTokens Prod wyświetla Server: Apache
ServerTokens Major wyświetla Server: Apache/2
ServerTokens Minor wyświetla Server: Apache/2.2
ServerTokens Min wyświetla Server: Apache/2.2.22
ServerTokens OS wyświetla Server: Apache/2.2.22(Ubuntu)
ServerTokens Full wyświetla Server: Apache/2.2.22 (Ubuntu) PHP/5.3.5
Zadanie dla Ciebie: sprawdź w dokumentacji do czego służy dyrektywa ServerSignature i czy warto ją wyłączyć.
Edytujemy plik dir.conf który określa nazwy i kolejność poszukiwania pliku domyślnego dla folderu. W naszym przypadku zostawimy index.html.
nano /etc/apache2/mods-enabled/dir.conf
Edytujemy plik apache2.conf aby ustawić nazwę naszego serwera/domeny. Przechodzimy do linii 70 i dodajemy ServerName:
ServerName www.mojadomena.pl
nano /etc/apache2/apache2.conf
Dopiszemy jeszcze adres mailowy administratora.
ServerAdmin webmaster@mojadomena.pl
nano /etc/apache2/sites-enabled/000-default.conf
To już prawie koniec. Możemy teraz podmienić domyślny plik index.html aby sprawdzić działanie naszego serwera. Kolejno, przechodzimy do katalogu zdefiniowanego w DocumentRoot, zmieniamy nazwę domyślnego pliku index.html serwera Apache i tworzymy nowy plik index.html:
cd /var/www/html/
mv index.html kopia_index.html
nano index.html
Do edytora wklej poniższy kod lub wpisz cokolwiek innego:
<h2 style="text-align: center;"><strong>Gratulacje!</strong></h2>
<p style="text-align: center;">Server apache is running</p>
Zapisujemy plik CTRL+O pod nazwą index.html. Pozostało nam tylko zrestartować serwer Apache i wywołać naszą stronę w przeglądarce wpisują IP naszego serwera.
systemctl restart apache2