Konfigurując swój własny serwer www bazujący na dystrybucji PCLinuxOS natrafiłem na ciekawą możliwość, a mianowicie automatyczne przekierowanie z subdomeny mojej domeny do katalogu znajdującego się w głównym folderze mojego serwera www.
Użyjemy do tego RewriteEngine, po pierwsze musimy mieć zainstalowany i skonfigurowany serwer apache (https://blog.sloniupl.eu/?p=583), następnie uruchamiamy konsolę i wydajemy kolejno polecenia:
# su
podajemy hasło roota a następnie :
# touch /etc/httpd/conf/vhosts.d/subdomeny.conf
# nano /etc/httpd/conf/vhosts.d/subdomeny.conf
i wklejamy poniższą zawartosć :
DocumentRoot /var/www/html/
<VirtualHost *>
ServerName mojastrona.eu
ServerAlias www.mojastrona.eu
RewriteEngine on
RewriteCond %{HTTP_HOST} ^mojastrona.eu
RewriteRule ^(.*)$ /var/www/html/$1 [L]
RewriteCond %{HTTP_HOST} ^www.*
RewriteRule ^(.*)$ /var/www/html/$1 [L]
RewriteCond %{HTTP_HOST} ^(.*)\.mojastrona\.eu
RewriteRule ^(.*)$ /%1/$1 [L]
</VirtualHost>
Najważniejsze aby ścieżki się zgadzały. W PCLinuxOS domyślnie jako DocumentRoot jest /var/www/html/ kiedy w innych dystrybucjach często zdarza się /var/www/ więc należy dostosować ustawienia dla właściwych dla siebie.
Jeszcze tylko restart serwera www:
# apachectl restart
Następnie musimy skonfigurować odpowiedni wpis klasy CNAME na serwerze DNS naszej domeny. W moim przypadku kiedy domena jest zaparkowana na serwerach home.pl należy zrobić to przez panel administracyjny:
Po zalogowaniu się do panelu i wybraniu konfiguracji usługi (mojadomena.eu) należy wybrać opcję Dodaj rekord w sekcji Rekordy domeny.
Na koniec klikamy Zapisz i gotowe 🙂
Teraz wszystkie podkatalogi jakie stworzymy w /var/www/html/ będą dostępne z poziomu subdomeny.
Np. jeśli stworzymy tam katalog blog to czyli /var/www/html/blog/ to będzie on dostępny po wpisaniu w przeglądarkę adresu blog.mojastrona.eu
Opis który mi najbardziej pomógł:
http://webhosting.pl/Jak.dynamicznie.przekierowywac.subdomeny.do.katalogow