Przewodnik dla początkujących po .htaccess

Opublikowany: 2023-10-25

.htaccess – przerażające słowo, które od czasu do czasu słyszy każdy właściciel witryny internetowej. Chociaż sama nazwa sprawia wrażenie zbyt technicznej, aby ją zrozumieć, jest to potężne narzędzie, które warto mieć w swoim arsenale. Opanowując .htaccess, jego działanie i możliwe przypadki użycia, możesz z łatwością zrobić z nim więcej niż wystarczającą liczbę rzeczy. Przyjrzyjmy się, co to jest, jak możesz wykorzystać to na swoją korzyść i uzyskaj najbardziej przydatne przykłady i wyjaśnienia dotyczące najczęstszych zastosowań .htaccess!

Co to jest .htaccess?

Skrót od „dostęp do hipertekstu”. .htaccess to plik konfiguracyjny, który może pomóc w kontrolowaniu oprogramowania Apache Web Server. Możesz utworzyć plik .htaccess i dodać go do katalogu, aby został załadowany i później wykonany przez serwer WWW Apache.

Mówiąc najprościej, możesz użyć tego pliku, aby włączyć lub wyłączyć dowolną funkcjonalność oferowaną przez serwer WWW. Od podstawowego przekierowania lub zapobiegania hotlinkom, istnieje wiele korzyści związanych z opanowaniem pracy z .htaccess.

Jak wygląda plik .htaccess?

Plik .htaccess jest tym, co z niego zrobisz. Może zawierać tylko jedną linię lub wiele linii, w zależności od przeznaczenia pliku. Jest wiele rzeczy, które możesz zapisać w pliku, aby wykonać tak wiele rzeczy. Niektóre przykłady znajdziesz w trakcie czytania.

Czy mam już taki?

W większości przypadków, jeśli masz witrynę internetową, prawdopodobnie masz już plik .htaccess. Zwykle można go znaleźć w folderze głównym witryny. Po prostu przejdź do folderu zawierającego całą zawartość Twojej witryny i poszukaj folderu Public_HTML lub folderu o nazwie www. Jeśli masz podkatalogi dla wielu witryn, znajdziesz po jednym w każdym podkatalogu.

Jeśli nie uda Ci się go znaleźć, nie martw się. Nie oznacza to, że go nie masz – można go po prostu ukryć. Zwykle dzieje się tak w przypadku plików rozpoczynających się od kropki, tak jak ma to miejsce w przypadku .htaccess. Domyślnie zwykle nie są łatwe do wykrycia.

Po prostu przejdź do Menedżera plików lub klienta FTP i poszukaj opcji „pokaż ukryte pliki”. Nie pozostawiaj żadnej opcji nie włączonej, szczególnie „Preferencji”, „Ustawień” lub „Opcji”.

Wygląda na to, że go nie mam.

Ale bez potu, bo możesz go bez wysiłku stworzyć. Potrzebujesz zwykłego edytora tekstu i dbałości o szczegóły. Możesz na przykład użyć programu Microsoft WordPad lub TextPad. Najtrudniejszą częścią jest jednak prawidłowe nazwanie i zapisanie pliku .htaccess.

Najpierw musisz zapisać go w odpowiednim formacie. Powinien być w formacie ASCII, więc powstrzymaj się od pokusy zapisania go w formacie UTF-8 lub w jakimkolwiek innym formacie.

Po drugie, upewnij się, że nazywa się .htaccess. Brzmi to dość prosto, ale w rzeczywistości tutaj liczy się dbałość o szczegóły. Chcesz zachować kropkę na początku. Następnym krokiem jest upewnienie się, że nie dołączasz żadnego rozszerzenia pliku. Zapisanie go jako „htaccess.txt” nie doprowadzi do mety. Dodaj kropkę i usuń rozszerzenie!

Na koniec chcesz przesłać go do odpowiedniego katalogu. Możesz wrócić do przewodnika i zapisać go w jednym z katalogów wymienionych powyżej. Aby to zrobić, możesz użyć protokołu FTP lub dowolnego innego menedżera plików opartego na przeglądarce, z którym czujesz się komfortowo.

Co mogę zrobić z .htaccess?

Jest wiele rzeczy, które możesz osiągnąć dzięki .htaccess i odrobinie wiedzy. Tutaj jest kilka z nich:

Obsługa błędów

Pierwszą i jedną z najprostszych rzeczy, które możesz zrobić za pomocą .htaccess, jest upewnienie się, że odwiedzający zobaczą przyjazny i niestandardowy komunikat o błędzie, a nie ten straszny.

Najpierw utwórz dokument HTML. Zalecane jest, aby zawierał opis błędu, np. „Not Found” w przypadku błędów 404 lub „Bad Gateway” w przypadku błędów 502. Prawda jest jednak taka, że ​​możesz wyświetlać dowolną treść.

Powinieneś także upewnić się, że nazwałeś go poprawnie, aby wiedzieć, który to dokument. Jeśli obsługuje błąd 404, powszechnym sposobem zapisania go jest plik 404.html. Chcesz także zapisać go w katalogu error_pages, w którym powinny znajdować się wszystkie dokumenty zawierające błędy.

Kiedy już wszystko będzie gotowe, otwórz plik .htaccess w preferowanym edytorze i wpisz coś takiego:

Dokument błędu 404 /error_pages/404.html

Ta linia poinformuje serwer Twojej witryny, aby wyświetlił wyznaczony dokument za każdym razem, gdy wystąpi błąd 404. Możesz powtórzyć ten proces z dowolnymi dokumentami błędów, aby mieć pewność, że odwiedzający nie będą sfrustrowani zbyt prostym i ogólnym komunikatem, który zwykle otrzymują.

Proste przekierowania

Chociaż WordPress może mieć wiele wtyczek, które zrobią to za Ciebie, możesz także przekierowywać odwiedzających za pomocą pliku .htaccess. Przekierowanie odwiedzających na wskazaną przez Ciebie stronę zamiast na tę, o którą prosili, to kolejne proste zadanie. Wpisując kolejną linię do pliku, możesz przekierować odwiedzających w inne miejsce w obrębie Twojej witryny lub nawet na inną witrynę.

Aby je przekierować, oto przykład tego, co możesz dodać do pliku .htaccess. Powinieneś oczywiście nieco go zmodyfikować, aby dopasować go do swoich potrzeb.

Przekieruj /stary_katalog/ http://www.twojadomena.com/nowy_katalog/index.html

Wyjaśnijmy to, abyś wiedział, jak to dostosować, aby mieć pewność, że odwiedzający trafią tam, gdzie chcesz.

Po pierwsze, jaki byłby /old_dir/? Jest to katalog lub dokument znajdujący się w Twojej domenie, a dokładniej pod adresem „http://www.twojadomena.com/old_dir/”. To jest punkt, do którego Twoi odwiedzający będą próbowali uzyskać dostęp. Pozostała część pliku określa, gdzie zamiast tego powinny się znaleźć. W takim przypadku trafią one na stronę indeksową katalogu /new_dir/ w Twojej witrynie.

Jak widać, w przeciwieństwie do punktu początkowego, strona, na którą mają trafiać użytkownicy, to pełny adres URL. Pomaga to w przypadku przekierowania do innej domeny, ponieważ możesz użyć dowolnego adresu URL i dodać go zamiast tego z przykładu. Kawałek ciasta, prawda?

Ochrona hasła

Jeśli chcesz zbudować społeczność wokół swojej witryny, udostępnienie obszaru członkowskiego i umożliwienie odwiedzającym zalogowania się może być właściwym rozwiązaniem. Chociaż społeczność to świetna rzecz, jeśli chodzi o Twoje działania marketingowe i sprzedaż, może również pomóc w generowaniu informacji o tym, kim są Twoi użytkownicy i w gromadzeniu bardzo potrzebnych informacji o Twoich klientach.

Jeśli spełniasz wymogi RODO, możesz skorzystać z tego sprytnego triku i edytować swoją ofertę na podstawie zebranych informacji, a w rezultacie – sprzedawać więcej!

Jak zabezpieczyć hasłem?

Możliwość dodania hasła do dowolnego elementu witryny to najczęstszy sposób korzystania z plików .htaccess. Jest to również dość proste do wykonania, a mimo to możesz zabezpieczyć hasłem katalog lub kilka. Spowoduje to, że użytkownicy będą mieli prawidłową nazwę użytkownika i hasło umożliwiające dostęp do niego, co może być przydatne w różnych sytuacjach.

Jeśli ustawisz ochronę katalogów hasłem, procedura logowania będzie dość prosta, a Twoja przeglądarka internetowa obsłuży ją automatycznie. Pojawi się jako wyskakujący interfejs przeglądarki. Hasła są również szyfrowane, więc dane logowania również będą bezpieczne.

Jeśli wiesz, który katalog chcesz zabezpieczyć hasłem, utwórz plik .htaccess. Pamiętaj, że wszystkie podkatalogi również będą chronione hasłem! Te same zasady obowiązują również w tym przypadku, ale warto uwzględnić następujące elementy:

AuthName „Imię członka”

AuthUserFile /ścieżka/do/hasło/plik/.htpasswd

Podstawowy typ uwierzytelniania

wymagają prawidłowego użytkownika

Podzielmy to na części, abyś wiedział, jak je zmodyfikować, jeśli zajdzie taka potrzeba. W pierwszej linii plik .htaccess określa nazwę katalogu, który chcesz chronić. W tym przypadku jest to katalog „Nazwa członka”, ale należy go zmodyfikować, aby pasował do nazwy katalogu, który musi być chroniony hasłem.

Druga linia określa plik z hasłami, a dokładniej, gdzie serwer może znaleźć plik z hasłami. Trzeci to typ autoryzacji, którego używasz. W tym przykładzie jest to podstawowe, oznaczające podstawowe uwierzytelnianie HTTP.

Ostatnia linia oznacza wymagania dotyczące logowania. W tym przykładzie wymagane są ważne dane logowania. Możesz tutaj określić, co jest potrzebne, aby było ważne, w zależności od tego, co próbujesz chronić hasłem.

Plik hasła

Teraz musisz znaleźć plik haseł. Chociaż może on znajdować się w dowolnym miejscu na serwerze internetowym, zaleca się, aby plik haseł znajdował się w tym samym katalogu, co plik .htaccess. Dzieje się tak dlatego, że niektóre serwery wymagają takiej konfiguracji. W drugim wierszu należy podać pełną ścieżkę do katalogu zawierającego plik z hasłami.

Oczywiście oznacza to również, że musisz mieć gotowy plik haseł. W tym przykładzie nazywa się to .htpasswd, ale możesz nazwać go jakkolwiek chcesz. Jeśli jednak nazwiesz go tak samo, dobrą wiadomością jest to, że serwer rozpozna tę nazwę pliku i automatycznie ukryje ją przed odwiedzającymi. Plik haseł powinien zawierać coś w rodzaju:

nazwa użytkownika:zaszyfrowane hasło

john_smith:oCF9Pam/MXJg2

Odmów dostępu odwiedzającym

Nawet w przypadku stron internetowych istnieją persona non grata. Mając odpowiedni plik .htaccess, możesz ograniczyć czyjś dostęp. Lub, z drugiej strony, zezwól na określony dostęp konkretnemu odwiedzającemu. Pierwszy jest raczej przydatny, jeśli chcesz chronić swoją witrynę, a drugi jest idealny, jeśli chcesz mieć pełną kontrolę nad konkretnym aspektem swojej witryny.

Możesz odmówić dostępu odwiedzającym na dwa sposoby. Odmawiaj dostępu odwiedzającym w zależności od ich adresu IP lub możesz dokonać wyboru na podstawie strony odsyłającej.

Odmowa przez IP

Jeśli chcesz umieścić jakiś adres IP na czarnej liście, możesz to zrobić bez wysiłku, korzystając z pliku .htaccess. Utwórz nowy, kierując się tymi samymi zasadami, a następnie dodaj następujący tekst.

rozkazuj, pozwól, odmów

odmów od XXX.XXX

odmów od XXX.XX.X.

pozwolić wszystkim

Oczywiście powinieneś zastąpić X adresem IP, który chcesz zablokować. Dodaj tyle, ile potrzebujesz, a ten plik poinformuje serwer WWW, że te adresy IP nie są mile widziane w Twojej witrynie. Pamiętaj, aby dodać opcję Zezwól od wszystkich, ponieważ ta linia oznacza, że ​​inni odwiedzający są więcej niż mile widziani w Twojej witrynie.

Z drugiej strony, jeśli chcesz być jedyną osobą mającą dostęp, powinieneś zamiast tego dołączyć następujący tekst:

rozkazuj, pozwól, odmów

zezwalaj od XXX.0.0.0

Odmowa od wszystkich

Oczywiście powinieneś zastąpić Xs własnym adresem IP. Ten powie serwerowi, że tylko Ty powinieneś mieć dostęp do określonego miejsca.

Odmowa przez osobę polecającą

Przeglądając swoje logi, zauważasz podejrzaną aktywność. Dlaczego po prostu nie dodasz osoby polecającej do czarnej listy i nie będziesz się martwić? Oto jak możesz to zrobić za pomocą .htaccess.

Po prostu utwórz plik w zwykły sposób. Dane wejściowe powinny wyglądać następująco:

Przepisz silnik włączony

# Opcje +Śledź łącza symboliczne

PrzepiszCond %{HTTP_REFERER} innadomena\.com [NC]

Przepisz regułę .* – [F]

To powinno załatwić sprawę! Powinieneś jednak sprawdzić, czy opcja „mod_rewrite” jest włączona na Twoim serwerze, ponieważ może zostać wyłączona, ponieważ może powodować dość duże zapotrzebowanie na zasoby. Jeśli tak, sprawdź to u swojego dostawcy usług hostingowych.

Zasadniczo te linie informują serwer, że nikt z innej domeny\.com nie jest mile widziany w Twojej witrynie. Zamiast tego powinieneś oczywiście dodać tutaj odpowiednią domenę. Część „[NC]” na końcu jest również bardzo ważna, ponieważ informuje, że w podanej nazwie domeny nie jest rozróżniana wielkość liter. Oznacza to, że „InnaDomena” również jest niedostępna.

Jeśli chcesz zablokować wielu sprawiających kłopoty, dodaj zamiast tego „[NC, OR]”, a następnie po prostu dodaj kolejnego w ten sam sposób:

PrzepiszCond %{HTTP_REFERER} inna domena\.com

Możesz to robić, aż będziesz zadowolony, ale nie zapomnij dodać „[NC, OR]” na końcu każdego z nich, z wyjątkiem ostatniego.

Zapobieganie skanowaniu Twojej witryny przez złe boty

Innym doskonałym powodem użycia .htaccess jest zapobieganie robotom indeksującym w Twojej witrynie. Istnieją nieszkodliwe, które pobierają całą zawartość w celu przeglądania jej w trybie offline, ale są też takie, które mają złośliwe intencje. Mianowicie, Internet jest pełen złych botów, które szukają adresów e-mail, aby wypełnić je spamem, lukami w zabezpieczeniach lub po prostu pozyskać treści.

Chociaż jest to nieco bardziej zaawansowane niż poprzednie przykłady, zdecydowanie powinieneś spróbować. Zapobieganie wyrządzaniu Ci krzywdy przez te złe boty jest koniecznością w ten czy inny sposób.

Po prostu utwórz kolejny plik .htaccess, tak jak zrobiłeś to w poprzednich przykładach. To, co musisz w nim napisać, jest podobne do tego:

Przepisz silnik włączony

Przepisz stan %{HTTP_USER_AGENT} ^BlackWidow [OR]

Przepisz stan %{HTTP_USER_AGENT} ^SuperBot

Przepisz regułę ^.* – [F,L]

Prawda jest taka, że ​​lista powinna być znacznie dłuższa, gdyż powinna zawierać wszystkie znane boty-nietoperze. Listę taką znajdziesz tutaj. Im więcej ich uwzględnisz, tym lepiej.

Mimo to pamiętaj o zmianie jego nazwy – użyj nazwy bota zamiast BlackWidow lub SuperBot. Zawsze dodawaj [OR] na końcu każdego, ale pamiętaj, aby nie używać go z ostatnim. Voila! Twoja witryna jest wolna od tych wszystkich złośliwych robotów!

Czy jest więcej?

Oczywiście, że istnieje. Jak już powiedziano, w końcu jest to przewodnik dla początkujących. Jest wiele dodatkowych rzeczy, które możesz zrobić z plikami .htaccess.

Na przykład możesz użyć plików .htaccess, aby ustawić strefę czasową serwera lub zmienić jego podpis. Jeśli Twoja witryna w dużym stopniu opiera się na multimediach, możesz jej użyć, aby upewnić się, że wszystkie pliki multimedialne zostaną pobrane, a nie odtwarzane. Możesz też go użyć, aby zapobiec żądaniom zawierającym nieprawidłowe znaki i wiele więcej.

Chociaż nawet próba przeliterowania .htaccess jest kłopotliwa, użycie takiego, jak widać, to bułka z masłem, a jednocześnie możesz z nim osiągnąć tak wiele!

Tworząc i edytując plik, musisz pamiętać o jego dokładnym przetestowaniu po wprowadzeniu jakichkolwiek zmian, zanim opublikujesz go. Nie chcesz, aby użytkownicy wyświetlali wewnętrzny błąd serwera 500, prawda?

Ostatnia rada

Nawet jeśli coś nie działa prawidłowo, nie denerwuj się zbytnio. Sprawdź, czy nie ma literówek, to zwykle pomaga! Jeśli tak nie jest, sprawdź fora pomocy technicznej!