Przekierowanie .htaccess starej domeny na nową

Z cyklu dyrektywy w .htaccess lub vhost w apache, które zawsze wypadają z głowy. Jest kilka z nich, które warto sobie zapisać bo często do nich wracamy.

Zdarza się, że migrując serwis (lub np. zmieniając jego adres url) musimy przekierować wszystkie stare odwołania na nowe (ze starej domeny na nową) i to najlepiej tak, żeby nie zagniewać google-a tą zmianą – złe przekierowanie może skutkować spadkiem page rank lub zniknięciem chwilowym z google-a. Przy założeniu że struktura adresów wewnątrz jest taka sama zmienie ulega tylko część domenowa adresu. W przykładzie poniżej dbamy też o to czy jest czy nie ma prefix-u www na początku domeny (co nie zawsze może mieć zastosowanie).


<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^stara-domena.pracowici-programisci.pl$ [OR]
    RewriteCond %{HTTP_HOST} ^www.stara-domena.pracowici-programisci.pl$
    RewriteRule (.*)$ http://nowa-domena.pracowici-programisci.pl/$1 [R=301,L]
</IfModule>

O dobre samopoczucie silnika wyszukiwarek/indexerów dba rodzaj przekierowania w protokole http o kodzie 301 (Moved Permanently).

//TODO: Uzupełnimy notatkę o zagadnienie http z ssl gdy trafimy na taki przypadek w pracy.