Domyślnie Apache pod w Ubuntu ustawia główny katalog do przechowywania stron w /var/www co nie jest ani trochę wygodne, jeśli się pisze strony i chce się lokalnego serwera używać do wyświetlania strony w procesie produkcji. O wiele wygodniej jest mieć katalog z projektami w katalogu domowym a mimo to móc je wyświetlać. Przekonałam się, że to nie jest szczególnie skomplikowane.
Krok 1 – zmiana katalogu localhost
W pierwszej kolejności należy przedefiniować katalog localhost tak, żeby wskazywał na katalog w którym będziesz przechowywać swoje projekty. Trzeba więc edytować plik konfiguracyjny Apache:
$ sudo nano /etc/apache2/apache2.conf
i dodać następujący kod:
<Directory /home/twojkatalogdomowy/sciezka/do/katalogu/z/projektami> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
Nastepnie za pomocą Ctrl+o apisujemy plik i Ctrl+x zamykamy.
Krok 2 – dodanie konfiguracji virtualhost
Pliki konfiguracyjne hostów wirtualnych znajdują się w położeniu /etc/apache2/sites-available/ i tu nalezy dodać odpowiedni plik. Powiedzmy, że nasz host wirtualny będzie się nazywał myproject. Wpisujemy więc w konsoli komendy:
$ cd /etc/apache2/sites-available/
$ sudo nano myprojekt.conf
I już mamy otwarty nowy plik konfiguracyjny naszego projektu. Następnie należy w nim umieścić odpowiednie informacje. Wystarczy taka minimalistyczna konfiguracja:
<VirtualHost *:80> ServerName myproject DirectoryIndex index.php index.html DocumentRoot /home/twojkatalogdomowy/sciezka/do/projektu/myproject </VirtualHost>
Nastepnie za pomocą Ctrl+o apisujemy plik i Ctrl+x zamykamy.
Krok 3 – aktywacja
Wystarczy w konsoli komenda:
$ sudo a2ensite myprojekt.conf
Po której wyświetli sie komunikat: Enabling site projekt1. To activate the new configuration, you need to run: service apache2 reload Nie pozostaje nic innego jak zrestartowanie serwera:
$ sudo service apache2 reload
Krok 4 – modyfikacja pliku hosts
Plik hosts znajduje się w katalogu etc więc, żeby go zmodyfikować wystarczy komenda:
$ sudo nano /etc/hosts
Po otwarciu pliku do edycji wystarczy wpisać linie:
127.0.0.1 myproject
Znów zapisujemy i zamykami plik komentami Ctrl+o i Ctyrl+x.
Krok 5 – ustawienie praw dostepu
Wszystko by było dobrze gdyby nie to, że po wpisaniu w przeglądarkę adresy myproject/ najprawdopodobniej ujrzysz komunikat “You don’t have permission to access / on this server.”. W takim razie nalezy nadać uprawnienia do katalogu z projektem dla www-data.
$ sudo -u www-data ls ~/home/sciezka/do/projektu/myproject