sobota, 14 stycznia 2012

VirtualHost na Linux`ie

The Apache Software Foundation
Całkiem niedawno przesiadłem się na Linux Mint, dystrybucję opartą na Ubuntu, która z koleji opiera się na Debian`ie. Dwunasta wersja o nazwie kodowej "Lisa" prezentuje się całkiem nieźle, ale niestety z braku doświadczenia i wsparcia na Sony Vaio nie raz muszę się pogłowić jak coś zrobić. Czasami całkiem frustrujące sytuacje mają proste rozwiązania, tak też było z VirtualHost w Apache.



W Microsoft Windows obsługa własnych domen wygląda mniej więcej tak:
  1. Dodanie wpisu do pliku C:/Windows/system32/hosts
    123.123.123.123  domena.localhost
  2. Dodanie wpisu do pliku C:/XAMPP/apache/conf/httpd.conf
    <VirtualHost *:80>
        RewriteEngine On
        RewriteOptions Inherit
        ServerName domena.localhost
        DocumentRoot /var/www/domena
        <Directory />
            Options FollowSymLinks
            AllowOverride All
        </Directory>
        <Directory /var/www/domena>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
        </Directory>
        ErrorLog /var/www/domena/apache-error.log
        LogLevel warn
        CustomLog /var/www/domena/apache-access.log combined
    </VirtualHost>
Teraz wystarczyło uruchomić serwer i cieszyć się z jej dobrodziejstw. Niestety trochę czasu potrwało zanim uzyskałem podobny efekt w moim nowym systemie.Rozpoczynamy podobnie:
  1. Dodanie wpisu do pliku /etc/hosts
    123.123.123.123  domena.localhost
  2. Stworzenie nowego pliku w /etc/apache2/sites-available/domena
    <VirtualHost *:80>
        RewriteEngine On
        RewriteOptions Inherit
        ServerName domena.localhost
        DocumentRoot /var/www/domena
        <Directory />
            Options FollowSymLinks
            AllowOverride All
        </Directory>
        <Directory /var/www/domena>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
        </Directory>
        ErrorLog /var/www/domena/apache-error.log
        LogLevel warn
        CustomLog /var/www/domena/apache-access.log combined
    </VirtualHost>
  3. Wykonanie komendy w terminalu
    a2esite domena
Teraz należy usługę zrestartować i to wszystko. Listę uruchominych stron znajdziemy w katalogu /etc/apache2/sites-enabled.

Jak widać na obu platformach sytuacja wygląda podobnie, ale nie tak samo więc mam nadzieję, że zaoszczędzę komuś czasu.