utworzenie wirtualnego hosta (vhosta) na serwerze LAMP do celów developerskich

Oczywiście akronim LAMP to Linux Apache MySQL PHP.

Natomiast tzw. vhost (virtual host) jest pomocny przy tworzeniu stron internetowych na dysku lokalnym. Przydaje się także kiedy np. chcemy przetestować jakiś skrypt typu forum, CMS, itp. i nie chcemy do tego celu specjalnie wykupywać serwera WWW.

Takie rozwiązanie ma też inne niewątpliwe zalety. Szybkość działania, „niepubliczność” (teoretycznie nikt poza nami go nie widzi). No i aby przetestować skrypt lub stronę … nie potrzebujemy Internetu. Wystarczy nam maszyna na której działamy 😉

Wersja virtual hosta tutaj przedstawiona jest prowizoryczna i developerska. Nie powinna być stosowana do np. rozwiązań webowych. Na pewno konieczne są dodatkowe funkcje konfiguracyjne jak logi, zabezpieczenia, ograniczenia portów, uniemożliwienie listowania folderów itp. Należy ją zatem traktować jako pomoc naukowo – programistyczną.

Na początku musimy zainstalować wymagane pakiety do działania serwera WWW w podstawowej formie. Opisywaliśmy to tutaj: https://linuxporady.pl/zestaw-podstawowych-pakietow-dla-serwera-www-np-opartego-o-vps/

Następnie upewniamy się że mamy prawa zapisu w folderze www

Wywołujemy:

sudo chown {NAZWA-NASZEGO-UŻYTKOWNIKA} /var/www/ -R

Tworzymy folder gdzie będzie nasza strona internetowa lub skrypt np. WordPress:

mkdir /var/www/strona

Wchodzimy w folder z dostępnymi vhostami:

cd /etc/apache2/sites-available/

Tworzymy nowy plik (nazwa jest dowolna – nazwijmy go tak, aby identyfikował nasz projekt / stronę itd):

sudo gedit strona.conf

Wklejamy w niego poniższą zawartość:


       ServerName      strona.local
       ServerAlias     www.strona.local
       DocumentRoot "/var/www/strona"
       
               Options Indexes FollowSymLinks MultiViews
               AllowOverride All
               Order Allow,Deny
               Allow from All
       

i zapisujemy.

Jak widzimy mamy tu zdeklarowaną „wirtualną” domenę

strona.local

w obrębie naszej maszyny. Musimy ją dodać do pliku hosts:

sudo gedit /etc/hosts

Na końcu pliku dopisujemy:

127.0.0.1	strona.local	www.strona.local

(Uwaga, białe znaki to tabulacje!)

Kolejny krok to aktywacja vhosta:

sudo a2ensite strona.conf

Oraz przeładowanie serwera Apache2:

sudo /etc/init.d/apache2 reload

Gotowe! W naszej przeglądarce po wpisaniu adresu: strona.local powinna wyświetlić zawartość naszego folderu:

/var/www/strona

Jak umieścimy tam np. pliki instalacyjne WordPress – rozpocznie się instalacja (serwer automatycznie wskaże na plik index.php).

Powyższa konfiguracja umożliwia także przez użyte dyrektywy działanie nadpisywania przyjaznych linków (mod_rewrite). Oczywiście po aktywacji tego modułu Apache’a i po odpowiednim przygotowaniu pliku .htaccess w folderze głównym projektu.

Jak włączamy ten moduł opisywaliśmy tutaj: https://linuxporady.pl/wlaczenie-trybu-mod_rewrite-w-apache-serwer/

Uwaga, przeglądarka Google Chrome może wymagać określenia protokołu na początku adresu. Wpiszmy zatem w pasku adresu pełen adres: http://strona.local

 

Możesz również polubić…

Inna porada:
Logujemy się jako root sudo su Edytujemy ulubionym edytorem plik…