Jak przekierować domenę na podkatalog za pomocą .htaccess?


Wprowadzenie

Poniższa instrukcja znajdzie zastosowanie, m.in. w konfiguracji w której domena została przekierowana na adres IP serwera znajdującego się w home.pl. Przekierowanie na adres IP jest możliwe m.in. poprzez edycję rekordu A w  panelu administracyjnym w panelu operatora domeny.

Jako główną wartość dla rekordu A należy podać adres IP serwera w home.pl, na którym jest opublikowana strona WWW. Ze względu na specyfikę usług home.pl, posiadanie unikalnego adresu IP niezbędnego, m.in. do uzyskania powyższej konfiguracji, może być odpłatne.
Unikalny adres IP danego serwera w home.pl możesz uzyskać kontaktując się z Biurem Obsługi Klienta. Przeczytaj więcej o unikalnym adresie IP dla poszczególnych usług home.pl.
WAŻNE! Przekierowanie domeny możesz również wykonać podając nazwę hosta serwera w home.pl jako główną wartość rekordu CNAME. Pamiętaj, że po dodaniu takiego rekordu CNAME poczta e-mail w danej domenie może przestać funkcjonować! Z tego powodu wskazane jest użycie rekordu A.

Przekierowanie domeny na katalog na serwerze w home.pl (.htaccess)

Po dodaniu odpowiedniego rekordu A, który będzie powodował skierowanie wybranej domeny na katalog główny serwera w home.pl, należy utworzyć odpowiedni plik konfiguracyjny.
Wspomniany plik konfiguracyjny (czyli “.htaccess”) będzie odpowiedzialny za przekierowanie wybranej domeny do podkatalogu na serwerze w home.pl. Każdy użytkownik wywołujący adres domeny będzie w pierwszej kolejności kierowany pod zdefiniowany adres IP serwera w home.pl, następnie plik konfiguracyjny .htaccess będzie powodował przekierowanie użytkownika do odpowiedniej zawartości (podkatalogu).
Funkcjonalność przekierowania domeny na podkatalog możemy uzyskać za pomocą prostych reguł mod_rewrite, które należy wpisać w pliku o nazwie “.htaccess”:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?domena\.pl$ [NC]
RewriteCond %{REQUEST_FILENAME} !/katalog/
RewriteRule ^(.*)$ /katalog/$1 [L]

Pogrubione pola: “domena” oraz “katalog” należy zmienić na odpowiednią wartość:

  • zamiast słowa domena wpisz nazwę domeny, która ma zostać przekierowana na podkatalog,
  • zamiast słowa katalog wpisz nazwę katalogu, do którego domena ma zostać przekierowana.

 

Sprawdź poniższy przykład dla domeny “twojadomena.pl”. Domena “twojadomena.pl” ma zostać przekierowana na podkatalog na nazwie “/stronawww”:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?twojadomena\.pl$ [NC]
RewriteCond %{REQUEST_FILENAME} !/stronawww/
RewriteRule ^(.*)$ /stronawww/$1 [L]
WAŻNE! Taki przygotowany plik “.htaccess” należy umieścić w katalogu głównym serwera, na którego adres IP została przekierowana domena.

Przekierowanie subdomen na podkatalogi na serwerze w home.pl (.htaccess)

Co będzie w przypadku, gdy będziemy chcieli przekierować wszystkie subdomeny w domenie np. “twojadomena.pl” na odpowiadające ich nazwie katalogi? Gdyby ta operacja wykonywana była na podstawie powyższego przykładu, to plik “.htaccess” w bardzo krótkim czasie zwiększyłby swoją objętość. Otóż jest na to bardziej optymalny sposób:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www\.)?twojadomena\.pl$ [NC]
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)\.twojadomena\.pl$ [NC]
RewriteRule .* /%2%{REQUEST_URI}

W ten oto prosty sposób mamy możliwość przepisania wszystkich subdomen o adresie “www.*.twojadomena.pl” na odpowiadające ich nazwie katalogi. Jest to optymalne rozwiązanie, ponieważ wprowadzanie jakichkolwiek modyfikacji w konfiguracji domeny nie jest wymagane. Znak gwiazdki * oznacza dowolny ciąg znaków, czyli dowolną subdomenę.

Dodatkowe informacje oraz plusy przedstawionego rozwiązania

Reguły zadziałają także dla domen przypisanych z zewnętrznego serwera DNS na adres IP (rekord A) i/lub adres domeny (rekord CNAME) w sieci home.pl, pozwalając przekierować taką domenę na podkatalog bez konieczności przypisywania jej do serwera.

Dużym plusem przy zastosowaniu przekierowania tego typu jest fakt, iż aplikacja nie jest zamykana w ramach danego podkatalogu za pomocą mechanizmu “chroot” i mamy dostęp do skryptów i katalogów opublikowanych w ramach całego serwera. Pozwala to nam np. na includowanie skryptów w PHP znajdujących się powyżej drzewa podkatalogu, na który przekierowaliśmy domenę.

Korzystanie z tego typu przekierowania przy domenie przypisanej do serwera w home.pl (i skierowanej na katalog główny serwera)

Jeśli domena pierwszego rzędu (np. “twojadomena.pl”) jest skierowana na katalog główny serwera w home.pl, to należy zwrócić uwagę na fakt, że próba wywołania adresu “dowolna_nazwa.twojadomena.pl”, spowoduje przekierowanie do katalogu “/dowolna_nazwa”.

Jeśli katalog “/dowolna_nazwa” istnieje, to przepisanie adresu można zdefiniować w pliku “.htaccess”, który należy umieścić w katalogu “/dowolna_nazwa”. W przypadku, jeśli katalog “/dowolna_nazwa” nie istnieje, to wywołany zostanie katalog główny serwera, do którego domena jest przypisana.

Hosting stworzony dla WordPressa

Masz stronę WWW na WordPressie? My też uwielbiamy ten system dla stron internetowych. Dlatego stworzyliśmy hosting specjalnie dla jego użytkowników.


Zabezpiecz stronę WWW certyfikatem SSL

Chroń dane formularzy i transakcji z zieloną kłódką przy adresie.


  • Czy artykuł był pomocny ?
  • Tak   Nie

Tematy powiązane

Szukaj
Generic filters
Tylko dokładne dopasowania
Szukaj w tytułach
Szukaj w treści
Wyświetl posty typu:
lub