Dopiero zaczynasz swoją przygodę z WordPressem? Na pewno słyszałeś już o pliku .htaccess i pewnie wydaje się to być skomplikowane działanie. Spokojnie, nie ma się czego obawiać. Przy odrobinie wiedzy i skutecznych trikach sprawnie ogarniesz działanie tego pliku konfigurującego, a przy tym zabezpieczysz swoją witrynę. Zaczynamy!
Czym jest plik .htaccess?
Plik konfigurujący .htaccess, znajduje się w katalogu głównym na serwerze Apache Web Server bądź Lite Speed i zawiera w sobie instrukcje dotyczące żądań HTTP. Wykorzystuje się go w celu tworzenia przekierowań. Pełni również funkcję zabezpieczającą pliki i foldery, umożliwia zmianę sposobu wyświetlania adresów URL, kontrolowania SEO i wiele innych przydatnych funkcji.
Zastosowanie pliku .htaccess – do czego służy?
Z pliku .htaccess korzystają użytkownicy platformy CMS WordPress i dzięki niemu mogą zarządzać swoją witryną. Jakich konfiguracji można dokonać z tym plikiem?
- Przekierowania – to najpopularniejsza funkcja , która umożliwia kontrolę ruchu w witrynie.
- Zabezpieczenia – dzięki niemu możemy ograniczyć dostęp do plików i katalogów w obrębie strony. Umożliwia zabezpieczenie całej strony, lub jej wybranych części, a także zablokowanie szkodliwych skryptów.
- Kontrola botów – plik .htaccess umożliwia ograniczenie dostępu dla robotów wyszukiwarki, a także zabezpieczenie przed złośliwymi botami.
- Zwiększenie wydajności strony – za pomocą pliku konfiguracyjnego istnieje kilka sposobów na usprawnienie funkcjonowania witryny, np. poprzez zmianę rozmiaru plików, czy też ustawienia domyślnych elementów ładowania strony.
Jak stworzyć plik .htaccess?
W tym celu wystarczy dowolny edytor tekstu np. Notatnik (Zalecany jest Notepad++). Nazwa to oczywiście .htaccess . Jeżeli reguły pliku będą odnosić się do całej domeny, to przygotowany plik umieszczamy w katalogu głównym – public _html. Należy sprawdzić, czy kodowanie pliku to UTF –8.
Pamiętajmy, że plik .htaccess możemy stworzyć dla każdej subdomeny, a nawet dla dowolnego folderu.
Edytowanie pliku .htaccess
Możemy oczywiście zmodyfikować gotowy plik tekstowy. W takim przypadku ściągamy plik na dysk swojego komputera, a następnie postępujemy w ten sam sposób, jak przy tworzeniu .htaccess. wpisujemy reguł, a na końcu każdego wiersza dodajemy znak ENTER.
Kiedy reguły będą gotowe, wysyłamy plik z powrotem na dysk. Pamiętajmy o zapasowej kopii pliku. Pomoże w sytuacji, gdy zechcemy szybko cofnąć zmiany. W ten sposób unikniemy ponownego wpisywania reguł.
Reguły pliku .htaccess – podstawowe wpisy
Plik .htaccess służy właśnie do wpisywania reguł, które kontrolują działanie naszej strony. Istnieje wiele takich reguł, ale zajmiemy się tymi najważniejszymi:
Przekierowanie 301
Najpopularniejsze zadania .htaccess to chyba przekierowania. Jest to jego podstawowa funkcja, która informuje o zmianie adresu strony internetowej:
RewriteEngine On
RewriteRule ^poprzedni-adres$ http://domena.pl/nowy-adres [L,R=301]
Hasło do plików i folderów
Jednym z podstawowych zadań pliku jest blokowanie dostępu do określonych plików/folderów. Głównym plikiem jest np. wp-admin.php. To jedna z pierwszych, czynności, jaką wykonujemy, ponieważ umożliwia zabezpieczenie logowania do naszego serwera CMS WordPress dwoma hasłami:
<Files wp-login.php>
Order Deny,Allow
Deny from All
Satisfy Any
AuthName „Dostep Chroniony”
AuthUserFile /dostepchroniony/.htpasswda1
AuthType Basic
Require valid-user
</Files>
Powstaje tutaj: login:haslo .
WordPress oferuje także inne narzędzie do zabezpieczenia logowania plikiem htacces. Tutaj zaprezentowana została podstawowa metoda.
Zabezpieczenie pliku wp-config.php
W pliku canfig.php zawarte są dane dotyczące dostępu do MySQL. Poprzez plik .htaccess możemy dołożyć do nich dodatkowe zabezpieczenie. Po zastosowaniu tej reguły nikt, kto nie ma dostępu do FTP ich nie wykorzysta
<files wp-config.php>
order allow, deny
deny from all
</files>
Zabezpieczenie danych autora w WordPress
Hakerzy mają różne sposoby na włamanie się do strony. Jednym z takich sposobów jest wykorzystywanie skryptu, który poszukuje danych autora na stronie, po czym łamie hasło dostępu. Aby zapobiec takiej sytuacji, możemy zastosować tego rodzaju skrypt:
# BEGIN blokowanie skanowania
RewriteEngine On
RewriteBegine /
RewriteCound %{QUERY_ STRING} (autor=d+) [NC]
RewriteRule .* – [F]
END blokowanie skanowania
Blokowanie wybranych adresów IP
W sytuacji, kiedy wiemy, że konkretny adres IP jest szkodliwy, mamy możliwość ograniczenia mu dostępu do serwera. Jak to wykonać?
- blokada adresów IP:
Deny from all
- blokada adresów IP z wyjątkiem:
Order allow, deny
allow from 123.456.789.0
- blokada tylko niektórych adresów IP
Order deny, allow
deny from 123.456.789.0
Blokowanie domeny na podst. strony odsyłającej
Mamy możliwość zablokowania niechcianej strony. Żeby to wykonać powinniśmy mieć włączoną funkcję FollowSymlinks. W przeciwnym wypadku serwer odeśle nam błąd 500. Dzięki zastosowaniu temu zablokowanej domenie wyświetli się błąd 403.
RewriteEngine on
options +FollowSymlinks
RewriteCond%{HTTP REFERER} okreslonastrona / .pl [NC]
RewriteRule .* [F]
Nasza strona – kod błędu
Jedną z podstawowych stron, jaką robi administrator strony internetowej, jest własna strona błędu(404). To ważne, jeśli chcemy decydować, co wyświetli się użytkownikom i w jakiej formie. Ponadto przy kodzie błędu 500 czy 403 również możemy wyświetlić domenom własny komunikat:
ErrorDokument 404/error_pages/404.html
Blokowanie stron dla botów
Oczywiście zablokować dostęp do pewnych informacji, jest możliwe także dla robotów:
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^nazwabota [OR]
RewriteCond %{HTTP_USER_AGENT} ^nazwabota
RewriteRule .* – [F]
Wymuszenie przedrostka www przy adresie URL
Z punktu widzenia pozycjonowania strona, która ma dwie wersje z przedrostkiem www. i bez nie jest wskazana. Dlatego w celu identyfikacji wersji podstawowej używa się tego pliku tekstowego:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domena.pl(.*) [NC]
RewriteRule ^(.*)$ http://www.domena.pl/$1 [R=301,L]
Wymuszenie adresu URL bez przedrostka www
Można również przekierować stronę na adres bez przedrostka. Umożliwia to ta reguła:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.domena.pl(.*) [NC]
RewriteRule ^(.*)$ http://domena.pl/$1 [R=301,L]
Hotlinking – zablokowanie
Jeśli jakaś strona podejmuje próbę korzystania z plików graficznych na naszym serwerze, zostanie automatycznie zablokowana:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(subdomena\.)?domena\.pl/.*$ [NC]
RewriteRule ^.*\.(bmp|tif|gif|jpg|jpeg|jpe|png)$ http://www.nooooooooooooooo.com/ [F]
Cookies – konfiguracja
Ustawienie czasu ciasteczek, czy też ich zabezpieczenie jest możliwe w .htaccess. Poniższa reguła pokazuje konfigurację plików cookies na 15 dni:
ExpiresDefalut ,,access plus 15 days”
Poprawne korzystanie z pliku .htaccess
Istnieje mnóstwo reguł, które możemy wdrożyć do systemu. Jednak należy pamiętać, że zbyt duża ilość może wpłynąć na szybkość ładowania strony. Jeśli dopiero zaczynamy pracę z plikiem, warto zastosować się do kilku zasad:
- Pojedyncze wdrażanie reguł – jest to istotne w przypadku wystąpienia jakichś błędów. Łatwiej będzie wypatrzeć błąd i szybko go naprawić. Masowe wprowadzanie reguł do serwera utrudni nam wyszukiwanie potencjalnych pomyłek.
- W sytuacji zmiany pliku .htaccess zaleca się stworzenie zapasowej kopii pliku. Umożliwi to wycofanie się z działań i cofnięcie zaistniałych zmian.
- Wielkość liter – jeśli korzystamy z serwera Apache, to musimy pisać małymi literami, ponieważ rozpoznaje on wielkość liter.
- Korzystaj z oprogramowania antywirusowego, żeby uniknąć problemów z działaniem pliku .htaccess.
Najczęstsze błędy z działaniem htaccess
- Błąd 500 – Intenal Server Error występuje w przypadku niepoprawnego formułowania reguł. Jeśli napotkasz ten błąd, musisz przeformułować reguły.
- Serwer Apche ma wyłączoną obsługę pliku .htaccess. – w takim przypadku plik tekstowy nie zadziała.
- złośliwe oprogramowanie – przyczyną nieprawidłowości z plikiem może być także zhakowany system, który przeformułowuje twoje reguły.
- Nieprawidłowo wpisane reguły – źle wpisane reguły nie zadziałają poprawnie. Sprawdź wielkość liter oraz wszystkie możliwe literówki i w razie potrzeby przeprowadź modyfikację.
- Problemy z przekierowaniami – wprowadzając reguły przekierowań, należy uważać. Błędy mogą doprowadzić np. do zapętlania się przekierować. Przed wpisaniem reguł zastanów się dobrze nad efektem, jaki chcesz uzyskać. Unikaj też błędów w składni.
Podsumowując plik htaccess to domyślny plik WordPress, służący do zarządzania witryną internetową
Zakończyłeś właśnie instalację WordPress? To teraz przyszła pora na plik konfiguracyjny serwera www. czyli .htaccess w panelu administracyjnym. Utworzenie pliku jest naprawdę łatwe. Kiedy skonfigurujesz plik, zdobędziesz dostęp do wielu dodatkowych funkcji, np. przekierowanie użytkownika z jednego adresu na inny, zabezpieczenie strony, czy zmiana HTTP na HTTPS. Te funkcje są naprawdę znaczące dla sprawnego działania www., dlatego warto podjąć się tego zadania i złapać odrobinę wiedzy na ten temat.