Chcesz wprowadzić zaawansowane modyfikacje dotyczące pracy z serwerem? Z naszego poradnika dowiesz się m.in. co to jest plik .htaccess oraz jakie może być zastosowanie w SEO. Jest to plik, w którym zapisano ustawienia np. katalogów. Wprowadzając w nim zmiany, można sterować pracą serwera www Apache.
Czym jest plik .htaccess?
Warto zacząć od wyjaśnienia samej nazwy. Wielu użytkownikom, którzy nie mają wiedzy technicznej, nazwa pliku .htaccess niewiele mówi, a w zasadzie to nie mówi właściwie nic. Jest to skrót, który powstał od dwóch słów Hypertext Access. Plik taki to zbiór konfiguracji, którą można wykorzystać, mając serwer Apache.
Umożliwia on konfigurację rozmaitych funkcji. Należą do nich między innymi przekierowania, choć trzeba wiedzieć, że plik ten daje znacznie więcej możliwości. Operacji w .htaccess mogę być wywoływane np. przez zmienne globalne lub zmienne przeglądarki.
Gdzie można znaleźć plik .htaccess? Jeżeli chcesz zmienić zawartość tego pliku, to przede wszystkim musisz mieć dostęp do serwera, na którym znajduje się konkretna strona internetowa. Plik .htaccess deweloperzy umieszczają przeważnie w katalogu głównym, choć z technicznego punktu widzenia, może go również stworzyć w innych katalogach.
Możliwości .htaccess
Jeżeli chcesz wpłynąć na konkretne zachowania serwera www Apache, to takie zmiany możesz wymusić właśnie w pliku .htaccess. Konfiguracja tego pliku nie jest skomplikowana – pod jednym warunkiem – że znasz odpowiednie komendy w .htaccess. Możliwości, jakie daje plik .htaccess są bardzo rozległe.
Wprawny administrator może w nim m.in. zawrzeć zapis o przekierowaniu na inną domenę, przekierowaniu z wersji bez www na wersję strony z www czy może też dzięki niemu ustawić konkretną stronę startową. Ponadto, w pliku tym można także ustawić hasło, dzięki któremu dostęp do określonych sekcji na stronie zostanie ograniczony.
Najważniejsze możliwości pliku .htaccess to m.in.:
- tworzenie przekierowań 301,
- przekierowania na wersję zabezpieczoną protokołem HTTPS,
- przekierowanie na określoną wersję domeny (z www lub bez),
- tworzenie przyjaznych linków,
- zmiana wersji php,
- blokowanie konkretnych adresów IP.
Istotne jest także to, że każda zmiana, jaka zostanie wprowadzona w pliku .htaccess będzie widoczna natychmiast.
Przekierowania 301 w htaccess
Przekierowanie 301 w htaccess używane jest do tego, aby przenieść użytkownika na inny adres. Ta funkcja przydatna okazuje się przy pozycjonowaniu stron. Chcąc podmienić domenę, można wykorzystać zapis w pliku .htaccess. Trzeba posłużyć się modułem mod_rewrite. Ustalając konkretne wytyczne dla pliku, należy pamiętać, aby reguły w .htaccessie zamieszczać w określonej kolejności. W przeciwnym razie nie będą działać prawidłowo.
Przekierowanie na inną domenę
Przekierowanie użytkownika na inną domenę może okazać się bardzo przydatne w wielu sytuacjach. Jeżeli na przykład Twoja strona internetowa znajduje się obecnie pod innym adresem, to dzięki odpowiedniej konfiguracji pliku htaccess będziesz mógł skierować użytkownika na nową domenę. W takim przypadku struktura zapisu w pliku będzie wyglądać następująco:
RewriteEngine On RewriteCond %{HTTP_HOST} ^(www\.)?domena-źródłowa\.pl [NC] RewriteRule (.*) http://domena-docelowa.pl/$1 [R=301,L]
Przekierowanie na wersję z www lub na wersję bez www
Kolejna możliwość, jaką daje Ci plik konfiguracyjny, to ustawienie przekierowania na jedną wersję strony. Czasem zdarza się tak, że jedna strona jest dostępna w dwóch wersjach – użytkownik może na taką samą treść trafić, gdy użyje przedrostka www i w sytuacji, gdy w pasek adresowy wpisze domenę bez takiego przedrostka.
Z punktu widzenia SEO, taka sytuacja jest bardzo niekorzystna. Pomocą w rozwiązaniu tego problemu będzie odpowiednia konfiguracja pliku .htaccess. Htaccess 301:
RewriteEngine On RewriteCond %{HTTP_HOST} ^domena.pl(.*) [NC] RewriteRule ^(.*)$ http://www.domena.pl/$1 [R=301,L]
Przekierowanie na https
Htaccess redirect to https – przekierowanie na HTTPS przyda się w sytuacji, gdy zostanie wdrożone zabezpieczenie witryny przy pomocy protokołu szyfrowanego. Na takie rozwiązanie powinni zdecydować się przede wszystkim administratorzy serwisów, które pozyskują poufne dane klientów (np. wymagane do zalogowania się do określonej sekcji). Ustawienie w pliku .htaccess umożliwia przekierowanie z nieszyfrowanej wersji strony na wersję szyfrowaną. Htaccess http to https:
RewriteCond %{SERVER_PORT} ^80$ RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]
Przekierowanie podstron na podstronę
Ta funkcja może okazać się bardzo przydatna w sytuacji, gdy wprowadzasz w swoim serwisie istotne zmiany. Jeżeli zmieni się struktura strony internetowej, to niektóre adresy podstron mogą okazać się nieaktualne. Takie przekierowanie często jest używane przez specjalistów SEO, którzy nie chcą, aby moc wartościowych linków prowadzących do witryny została utracona.
Strona 404 w .htaccess
Plik htaccess umożliwia także stworzenie własnej strony błędu 404. Dzięki temu jest szansa na to, że użytkownik, gdy trafi na taką stronę, to nie opuści jej, lecz postara się przejść do innej sekcji w ramach serwisu. Utworzenie własnej strony 404 nie jest skomplikowane, gdy ma się dostęp do pliku .htaccess. Chcąc skonfigurować własną stronę dla błędu 404, wystarczy w pliku umieścić poniższy zapis:
ErrorDocument 404 /error_pages/404.html
Zmiana wersji php w .htaccess
Jeżeli chcesz zmienić wersję PHP, wystarczy, że przygotujesz odpowiedni plik .htaccess.
SetEnv CGI_HANDLER php73
Powyższy zapis umieszczony w pliku .htaccess pozwoli Ci uzyskać wersję PHP 7.3 we wszystkich plikach.
Generowanie przyjaznych linków w .htaccess
Możliwość generowania przyjaznych linków w pliku .htaccess to kolejna funkcja, z której bardzo chętnie korzystają osoby związane ze światem SEO. Przyjazne linki pomagają w pozycjonowaniu serwisu internetowego, a ponadto, przyczyniają się do lepszego wrażenia użytkownika.
Przyspieszanie strony
Kolejny istotny element, który można poprawić dzięki odpowiednim zapisom w pliku .htaccess to szybkość ładowania się strony. Warto wiedzieć, że to, czy serwis ładuje się szybko, czy też wolno, ma wpływ na SEO. Zbyt powolne wczytywanie się strony przełoży się nie tylko na ocenę, jaką roboty Google wystawią witrynie przy układaniu rankingu. Wielu użytkowników może być zirytowanych tym, że serwis ładuje się zbyt długo i opuszczą stronę, zanim zdążą się zapoznać z jej zawartością.
Gzip
Dobra wiadomość jest taka, że można przyspieszyć czas ładowania strony. Wystarczy ograniczyć ilość zapytań obsługiwanych przez serwer. Jest to możliwe dzięki kompresji G-Zip. Wystarczy wykorzystać w tym celu poniższy kod:
AddOutputFilterByType DEFLATE text/html text/xml text/css text/plain
AddOutputFilterByType DEFLATE text/javascript application/javascript application/x-javascript application/json
Cachowanie
Cache to pamięć podręczna. Wyróżnia się cache po stronie serwera i klienta. W pliku .htaccess możesz dostosować zawartość pamięci podręcznej po stronie klienta.
Bezpieczeństwo strony
Plik .htaccess to nie tylko możliwość ustawienia przekierowań czy możliwość stworzenia własnej strony błędów 404. Odpowiednia konfiguracja tego pliku pozwoli Ci na znaczną poprawę bezpieczeństwa serwisu.
Blokowanie botów, hotlinkowania
Jeżeli nie chcesz, aby konkretne boty miały dostęp do Twojej strony, to możesz im zabronić na nią wstępu. Wystarczy, że wykorzystasz odpowiedni zapis.
Zabezpieczanie stron hasłem
To kolejna możliwość, jaką daje plik .htaccess. Chcesz wydzielić część witryny, która będzie dostępna dla użytkowników posiadających hasło? Wykorzystaj w tym celu plik .htaccess.
Własne strony błędów
Plik .htaccess umożliwi Ci nie tylko stworzenie strony błędu 404. Przy jego pomocy stworzysz również podstrony w serwisie do obsługi innych błędów, np 401. W ten sposób stworzysz komunikaty błędów.
ErrorDocument 401 https://domena.pl/errors/401.html
Jak stworzyć plik .htaccess? Co powinien zawierać?
Do stworzenia pliku .htaccess wystarczy najprostszy edytor tekstowy – nie trzeba sięgać po skomplikowane rozwiązania. Jedyne co będzie potrzebne, to możliwość utworzenia pliku tekstowego. Poprawne stworzenie pliku wymaga tego, aby nadać uprawnienia 644 dla .htaccess. Co ciekawe, ten plik konfiguracyjny wcale nie musi nazywać się .htaccess. Można mu nadać każdą inną, zupełnie dowolną nazwę. Aby to uczynić, wystarczy wykorzystać regułę AccessFileName.
Generatory .htaccess
Nie musisz samodzielnie wpisywać reguł w pliku tekstowym chcąc utworzyć plik .htaccess. Jeżeli skomplikowane komendy nie są Twoją mocną stroną skorzystaj z .htaccess generator.
.htaccess w WordPressie
WordPress to obecnie jeden z najpopularniejszych CMS-ów. Jak się okazuje, również w jego przypadku prawidłowo skonfigurowany plik .htaccess WordPress ma niebagatelne znaczenie. Możesz go wykorzystać np. do dodatkowej ochrony pliku wp-config.php.
Łatwy dostęp do pliku konfiguracyjnego możemy dostać dzięki wtyczce Yoast SEO.