Podstawy .htaccess: jak korzystać i przykłady

Artykuł napisany przez:
  • Przewodniki hostingowe
  • Zaktualizowano: Jul 16, 2019

Co to jest plik .htaccess?

Plik .htaccess jest plikiem SlimCleaner (zwykle zwany Apache) plik konfiguracyjny. Plik jest niezwykle wydajny i może być używany do kontrolowania wielu aspektów stron internetowych obsługiwanych przez Apache. Dotyczy to między innymi zarządzania przekierowaniami, ochroną Hotlink i innych.

Gdzie jest plik .htaccess?

W folderze głównym hosta WWW powinien znajdować się jeden plik .htaccess - folder (zwykle / public_html lub / www), który przechowuje zawartość witryny.

Możesz mieć więcej niż jeden plik .htaccess na swoim koncie hostingowym, ale każdy katalog lub folder może mieć tylko jeden. Na przykład możesz mieć oddzielne pliki .htaccess w folderze głównym, a inne w podfolderze. Umożliwia to ustawienie różnych zachowań serwera w oparciu o strukturę katalogów.

Plik .htaccess jest potężny, ale można go uzyskać i zmodyfikować, jeśli nie jest prawidłowo chroniony. Upewnij się, że podejmujesz kroki, aby uniemożliwić dostęp do tego pliku.

Nie mogę znaleźć mojego pliku .htaccess

Przede wszystkim .htaccess jest plikiem Apache, co oznacza, że ​​można go znaleźć tylko na serwerze Apache. * Przestań wyszukiwać, jeśli host działa na innym oprogramowaniu serwera WWW (np. Microsoft IIS lub NGINX).

Nazwy plików, które zaczynają się kropką, zwykle ukrywają pliki. Oznacza to, że nie są zazwyczaj domyślnie widoczne.

Aby wyświetlić ten plik, po prostu włącz „Show Hidden Files” w swoim kliencie FTP lub Hosting File Manager (patrz obraz poniżej).

Znajdź plik .htaccess - Jak wyświetlić ukryte pliki w menedżerze plików cPanel
Przykład - Wyświetl ukryte pliki, włączając tę ​​opcję w Menedżerze plików cPanel.

Może się wydawać, że plik .htaccess jest niedogodnością, ponieważ wymaga kodowania, ale należy wziąć pod uwagę użytkownika, który musi ustalić to samo zachowanie serwera w wielu witrynach. Wszystko, co osoba musi zrobić, to zduplikować plik .htaccess.

Pliki .htaccess są plikami konfiguracyjnymi serwera, a ponieważ dotyczą bezpośrednio zachowania, nie ma potrzeby, aby coś było uruchamiane za każdym razem, gdy wysyłane jest żądanie. Jest więc dużo mniej zasobów niż na przykład użycie wtyczki.

* Uwaga: Apache ma o 30% współczynniku wykorzystania rynku na podstawie raportu W3Techs. Najpopularniejsze marki hostingowe wymienione w WHSR - A2 Hosting, BlueHost, GreenGeeks, Hostinger, InMotion Hosting, SiteGround; są zasilane przez Apache.

Do czego służy .htaccess?

Chociaż przed nazwą pliku znajduje się kropka, htaccess to nazwa pliku, a kropka nie czyni z niego rozszerzenia. W szczególności jest to dokładnie ta nazwa pliku, której Apache szuka podczas uruchamiania. Wszystko w pliku .htaccess ustawia parametry dla Apache, aby mógł włączać lub wyłączać funkcje, a nawet wykonywać określone zadania po spełnieniu określonych warunków.

Na przykład na podstawie instrukcji zawartych w pliku Apache może automatycznie ładować niestandardowe strony błędów, jeśli odwiedzający witrynę szukają zasobu, którego tam nie ma. Każdy typ błędu ma swój własny kod i każdy z nich może być przekierowany indywidualnie.

Istnieje ogromna lista tego, co można zrobić za pomocą pliku .htaccess, a dziś udostępnię niektóre z nich tobie.

1. Zarządzanie niestandardowymi stronami błędów

Podpis: Przykłady kreatywnie dostosowanych stron błędów 404

Po pozostawieniu domyślnych ustawień większość oprogramowania serwera wysyła do użytkowników bardzo ponurą stronę błędu. Jeśli chcesz wyświetlić bardziej przyjazną dla użytkownika (lub przynajmniej prezentowalną) stronę błędu, musisz użyć niestandardowej obsługi dokumentów błędów w pliku .htaccess.

Powiedzmy, że zaprojektowałeś niestandardowa strona błędu 404 nazywany „404.html” i zapisany w podfolderze w katalogu internetowym o nazwie „strony_błędów”. Korzystając z następującego wiersza kodu w .htaccess, możesz wywołać tę stronę w górę, gdy odwiedzający napotka błąd 404;

ErrorDocument 404 / strony_orku / 404.html

Korzystając z tej techniki, możesz zapisać niestandardowe kopie każdego typu błędu, który chcesz rozliczyć, i skonfigurować je tak, aby były wywoływane przez dołączenie niezbędnego kodu do pliku .htaccess. Najczęściej spotykane kody błędów zawierać;

  • 400 - Złe żądanie
  • 403 - Zabronione
  • 404 - Nie znaleziono pliku
  • 500 - Wewnętrzny błąd serwera
  • 503 - Usługa niedostępna

2. Przekierowania uchwytów

Mogą zaistnieć sytuacje, w których chcesz ustawić przekierowanie zbiorcze, aby umożliwić kierowanie użytkowników do określonych stron bez ich wiedzy. Na przykład, jeśli pierwotnie używałeś HTTP, ale od tego czasu zainstalowano SSL i przeniesiono do HTTPS, chcesz, aby wszyscy użytkownicy korzystali z wersji HTTPS Twojej witryny.

W tej sytuacji musisz skorzystać z reguły Rewrite;

RewriteEngine On RewriteCond% {SERVER_PORT} 80 RewriteRule ^ (. *) $ Https://www.twojadomena.com/$1 [R, L]

Kod tego można zmodyfikować w zależności od potrzeb. Na przykład, jeśli chcesz przekierować użytkowników ze starej domeny do nowej, zamiast tego użyłbyś;

RewriteEngine On RewriteCond% {HTTP_HOST} ^ olddomain.com [NC, OR] RewriteCond% {HTTP_HOST} ^ www.olddomain.com [NC] RewriteRule ^ (. *) $ Http://newdomain.com/$1 [L, R = 301, NC]

Istnieje wiele wariantów konfiguracji przekierowań. Szczegóły składnia dla Rewrite można znaleźć w Dokumentacja Apache stron.

Jedną z najbardziej przydatnych rzeczy, które przekierowania mogą dla ciebie zrobić, jest pomoc w kierowaniu wyszukiwarek do stron, które zostały przeniesione. Zwykle wyszukiwarki indeksują linki, a jeśli nie mogą znaleźć właściwych stron, zakładają, że treść zniknęła.

Korzystając z przekierowania, możesz łatwo przenosić zawartość i pozwolić robotom indeksującym wiedzieć, gdzie znaleźć treści, które wcześniej indeksowały. Aby to zrobić, użyj;

Przekieruj 301 / archive / / past-entries /

Instrukcja 301 nie tylko umożliwia użytkownikom bezproblemowy dostęp do starej zawartości, ale także służy jako instrukcja dla robotów indeksujących, że zawartość jest przenoszona na stałe. To pomaga im, umożliwiając im szybkie indeksowanie linków.

2. Zwiększ bezpieczeństwo swojej witryny

Uważam, że wielu nowych właścicieli stron internetowych często opiera się na wielu kwestiach zewnętrzne narzędzia do zwiększenia bezpieczeństwa witryny. Chociaż prawdą jest, że istnieje mnóstwo świetnych aplikacji, możesz zacząć od podstaw w pliku .htaccess.

Katalogi ochrony hasłem

Aby to zrobić, potrzebujesz dwóch plików, .htaccess i .htpasswd. Plik .htpasswd zawiera pewne szyfrowanie, więc użyj narzędzia takiego jak Generator Htpasswd aby utworzyć plik. Plik .htaccess powinien zawierać ten kod;

AuthType Basic AuthName „Obszar chroniony hasłem” AuthUserFile /path/to/.htpasswd Wymagaj poprawnego użytkownika

Wyłącz przeglądanie katalogów

Jest to jeden z najłatwiejszych do wykonania i wymaga tylko dwóch wierszy kodu, które mają być zawarte w pliku .htaccess;

# Wyłącz przeglądanie katalogów Opcje -Indeksy

Blokuj określone adresy IP

Aby zablokować odwiedzanie Twojej witryny przez poszczególne adresy IP, dodaj następujący kod do pliku .htaccess;

Odmów z XXX.XXX.XXX.XXX

Gdzie zastąpisz XXX numerycznymi wartościami IP. Istnieją odmiany tego kodu, których można użyć do zablokowania zakresu adresów IP lub wielu adresów IP.

3. Ochrona Hotlink

Hotlinkowanie występuje, gdy inne strony internetowe prowadzą do obrazów, które udostępniasz. Jest to niepożądane, ponieważ wykorzystują zarówno przestrzeń, jak i przepustowość. Aby zapobiec hotlinkowaniu obrazu, dodaj następujące elementy do pliku .htaccess;

RewriteEngine na RewriteCond% {HTTP_REFERER}! ^ $ RewriteCond% {HTTP_REFERER}! ^ Http: // (www) example.com/.*$ [NC] RewriteRule (gif | jpg | jpeg | bmp) $ - [FA]

Ostatni wiersz tego kodu określa, które pliki chcesz zablokować z hotlinkowania. Zasadniczo instruuje Apache, aby blokował wszystkie linki do tych plików, które nie pochodzą z nazwy domeny http://www.example.com/.

Wiele osób, które hotlink często nie sprawdzają swoich postów ponownie, więc jeśli naprawdę chcesz ich zawstydzić, możesz wyświetlić niestandardową wiadomość do witryn, które próbują hotlinkować;

RewriteEngine na RewriteCond% {HTTP_REFERER}! ^ $ RewriteCond% {HTTP_REFERER}! ^ Http: // (www) example.com/.*$ [NC] RewriteRule (gif | jpg) $ http: // www .example.com / stopstealing.gif [R, L]

Które mogą wyświetlać alternatywny obraz w witrynie, która jest obraźliwa, w ten sposób:

4. Ochrona pliku .htaccess

Już teraz zdajesz sobie sprawę, jak przydatne jest naprawdę narzędzie .htaccess. Odkąd doszedłeś do tego wniosku, nadszedł czas, by pomyśleć o ochronie tego cennego pliku! Jeśli używasz pliku .htpasswd, prawdopodobnie będziesz chciał również to chronić, a sposobem na to jest;

# chroń .htaccess i .htpasswd <Files ~ "^. * ([Hh] [Tt])"> Order allow, deny Deny from all Satisfy all </Files>

Pamiętaj, że na najbardziej bezpiecznych serwerach pliki te są już chronione. Przed dodaniem tego kodu sprawdź, czy możesz uzyskać dostęp do plików w oknie przeglądarki. Po prostu wpisz adres URL i dodaj /.htaccess z tyłu, aby sprawdzić, czy możesz wyświetlić plik. Jeśli nie możesz, prawdopodobnie zostanie wyświetlony komunikat o błędzie.

5. Ustawianie strefy czasowej serwera

Jeśli zauważysz, że z jakiegoś powodu lub innych, czasy na twoim serwerze wydają się być nieco wyłączone, może zaistnieć potrzeba wymuszenia strefy czasowej przy użyciu pliku .htaccess. Jest to coś, co jest łatwe do zrobienia i wymaga tylko jednej linii kodu;

SetEnv TZ America / yourtimezone

Dostępna jest ogromna lista stref czasowych i można znaleźć najbliższe dopasowanie do swoich, odwołując się do lista obsługiwanych stref czasowych.

Ogarnij moc .htaccess

Próbki, które tu pokazałem, są tylko czubkiem bardzo dużej góry lodowej. Daje użytkownikom hostingu znacznie większą moc nad swoimi witrynami, niż normalnie można by uzyskać za pośrednictwem panelu sterowania, i daje im szerszy wachlarz narzędzi do pracy.

Nauka korzystania z kodu to zaledwie krok do przodu dzięki potędze Google, a najlepszą rzeczą jest to, że musisz tylko wybierać i uczyć się rzeczy, których potrzebujesz.

O Jerry Low

Założyciel WebHostingSecretRevealed.net (WHSR) - przegląd hostingu zaufany i używany przez użytkowników 100,000. Więcej niż doświadczenie 15 w hostingu, marketingu afiliacyjnym i SEO. Współpracuje z ProBlogger.net, Business.com, SocialMediaToday.com i innymi.