W pewnych sytuacjach może wystąpić potrzeba zablokowania lub ograniczenia dostępu do strony. Jak to zrobić? Z pomocą przychodzi nam plik .htaccess, który umożliwia wprowadzenie restrykcji na poziomie serwera.
- gdzie znajduje się plik .htaccess i jak go edytować
- jak zablokować dostęp do strony, w tym także z wyłączeniem wybranych adresów IP
- jak włączyć zabezpieczenie reCAPTCHA przed wejściem na stronę, dla użytkowników spoza Polski
- jak zablokować dostęp do strony spoza Polski, w tym również z wyłączeniem wybranych adresów IP
- jak zablokować dostęp do strony z wybranych państw
Wprowadzenie restrykcji jest bardzo proste. Wystarczy w tym celu dodać odpowiednią dyrektywę do pliku .htaccess. Najlepiej na samym początku, aby była ona wykonywana w pierwszej kolejności.
Gdzie znajduje się plik .htaccess?
Domyślnie plik .htaccess znajduje się w lokalizacji /domains/przykładowa_domena.pl/public_html lub /domains/przykładowa_domena.pl/public_html/subdomena. Jeżeli jednak w katalogu domeny nie posiadasz takiego pliku, niezbędne będzie jego utworzenie.
Jeśli posiadasz już plik .htaccess w katalogu domeny, możesz przejść do kolejnego punktu. W przeciwnym wypadku wykonaj poniższe kroki.
1. Zaloguj się do Panelu Klienta i wybierz zakładkę Hosting -> Manager plików.

2. Przejdź do katalogu domeny – np. domains -> przykładowa_domena.pl -> public_html.
3. W sekcji Narzędzia systemu plików, w polu Utwórz nowy plik, wprowadź nazwę .htaccess i kliknij w przycisk Utwórz.

4. W kolejnym kroku zostanie wyświetlony edytor pliku. Możesz kliknąć w przycisk Zapisz jako, aby zapisać plik lub też możesz pozostawić edytor otwarty do dalszych prac.

Jak edytować plik .htaccess?
Plik .htaccess możesz edytować m.in. w Panelu Klienta. W tym celu wykonaj poniższe kroki.
1. Zaloguj się do Panelu Klienta i wybierz zakładkę Hosting -> Manager plików.

2. Przejdź do katalogu domeny – np. domains -> przykładowa_domena.pl -> public_html.
3. Kliknij w link Edytuj, obok pliku .htaccess.

Jesteś już gotowy do edycji pliku, w związku z tym, możesz przejść do dalszych kroków.
Jak zablokować dostęp do strony?
Jeśli chcesz całkowicie zablokować dostęp do strony, dodaj poniższą dyrektywę.
Order Deny,Allow
Deny from all
Jak zablokować dostęp do strony z wyłączeniem wybranych adresów IP?
W przypadku gdy chcesz zablokować dostęp do strony, z wyłączeniem wybranych adresów IP, dodaj dyrektywę zgodną z poniższym przykładem.
Order deny,allow
Deny from all
Allow from 1.2.3.4
Zamiast 1.2.3.4 wprowadź adres IP, z którego ma być dozwolony dostęp do strony.
Jeśli potrzebujesz dodać więcej adresów IP, po prostu powiel wiersz Allow from tak jak w poniższym przykładzie.
Order deny,allow
Deny from all
Allow from 1.2.3.4
Allow from 4.5.6.7
Allow from 9.8.7.6
Swój adres IP możesz sprawdzić na stronie ip.zenbox.pl.
Jak włączyć zabezpieczenie reCAPTCHA przed wejściem na stronę, dla użytkowników spoza Polski?
Aby włączyć zabezpieczenie reCAPTCHA przed wejściem na stronę, dla użytkowników spoza Polski, wprowadź poniższą dyrektywę.
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} !^PL$
RewriteRule .* - [E=verifycaptcha]
Jak zablokować dostęp do strony spoza Polski?
Aby zablokować dostęp do strony dla użytkowników spoza Polski, wprowadź poniższą dyrektywę.
RewriteEngine On
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} !^PL$ [NC]
RewriteRule (.*) - [F]
Jak zablokować dostęp spoza Polski z wyłączeniem wybranych adresów IP?
Aby zablokować dostęp do strony spoza Polski, z wyłączeniem wybranych adresów IP, dodaj dyrektywę zgodną z poniższym przykładem.
GeoIPEnable On
SetEnvIf GEOIP_COUNTRY_CODE PL AllowCountry
Deny from all
Allow from env=AllowCountry
Allow from 1.2.3.4
Zamiast 1.2.3.4 wprowadź adres IP, z którego będzie dozwolony dostęp. Jeśli potrzebujesz dodać więcej adresów IP, z których będzie dozwolony dostęp, po prostu powiel wiersz Allow from, tak jak w poniższym przykładzie.
GeoIPEnable On
SetEnvIf GEOIP_COUNTRY_CODE PL AllowCountry
Deny from all
Allow from env=AllowCountry
Allow from 1.2.3.4
Allow from 4.5.6.7
Allow from 9.8.7.6
Jak zablokować dostęp do strony z wybranych państw?
Aby zablokować dostęp do strony tylko z wybranych państw, wprowadź dyrektywę zgodną z poniższym przykładem.
RewriteEngine On
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ^(RU|BY|CN)$ [NC]
RewriteRule (.*) - [F]
W wartości RU|BY|CN znajdują się kody państw, z których dostęp będzie niemożliwy. W tym przykładzie jest to Rosja, Białoruś oraz Chiny. Jak więc widzisz, w tej części dyrektywy należy wprowadzić kody państw, z których dostęp będzie niemożliwy. Oczywiście takich kodów możesz dodać więcej lub mniej, zależnie od potrzeb. Pamiętaj, aby były one oddzielone znakiem | tak jak w powyższym przykładzie.
Pełną listę kodów dla poszczególnych państw znajdziesz w naszej bazie wiedzy.
Podsumowanie
Plik .htaccess umożliwia zaawansowane zarządzanie dostępem do strony. Dzięki powyższym przykładom będziesz mógł skutecznie zablokować lub ograniczyć dostęp do strony, zależnie od swoich potrzeb.