Najważniejsze informacje
Plik .htaccess to kluczowy element konfiguracji serwerów Apache, który pozwala na modyfikację ich zachowania bez edycji głównych plików serwerowych. Poznaj jego najważniejsze funkcje i zastosowania.
- Definicja – to plik tekstowy, który kontroluje działanie serwera na poziomie konkretnego katalogu i jego podkatalogów.
- Zastosowanie – służy do tworzenia przekierowań 301, wymuszania HTTPS, blokowania dostępu, ustawiania własnych stron błędów i optymalizacji wydajności.
- Lokalizacja – znajduje się w głównym katalogu strony internetowej (np. public_html) i jest domyślnie ukryty.
- Bezpieczeństwo – pozwala chronić kluczowe pliki, jak wp-config.php w WordPressie, oraz blokować złośliwe boty i próby włamań.
- SEO – prawidłowa konfiguracja .htaccess, zwłaszcza przekierowań i protokołu HTTPS, ma bezpośredni wpływ na pozycjonowanie strony.
- Edycja – możesz go modyfikować za pomocą edytora tekstu, klienta FTP lub menedżera plików w panelu hostingu.
Co to jest plik .htaccess i do czego służy?
Plik .htaccess to plik konfiguracyjny serwera Apache, który pozwala na zmianę ustawień dla konkretnego katalogu i wszystkich jego podkatalogów. Jest to prosty plik tekstowy, którego nazwa zaczyna się od kropki, co w systemach uniksowych oznacza, że jest on domyślnie ukryty. Dzięki niemu możesz zarządzać przekierowaniami, bezpieczeństwem, wydajnością i sposobem wyświetlania strony bez dostępu do głównego pliku konfiguracyjnego serwera (httpd.conf).
Główną zaletą pliku .htaccess jest jego natychmiastowe działanie. Każda zmiana zapisana w pliku jest od razu wprowadzana przez serwer, bez potrzeby jego restartowania. To sprawia, że jest to narzędzie chętnie wykorzystywane przez deweloperów i administratorów stron do szybkiego wdrażania reguł, szczególnie w środowiskach hostingów współdzielonych, gdzie dostęp do konfiguracji globalnej jest ograniczony.
Jakie są podstawowe zastosowania pliku .htaccess?
Plik .htaccess oferuje szerokie możliwości, od prostych przekierowań po zaawansowane reguły bezpieczeństwa. Poniżej znajdziesz najczęstsze zastosowania, z którymi spotkasz się podczas zarządzania stroną internetową.
Oto kluczowe funkcje, które możesz zaimplementować:
- Przekierowania 301 – informują przeglądarki i roboty Google o trwałym przeniesieniu adresu URL. Jest to fundamentalne dla SEO, aby zachować moc starych linków. W naszej ofercie SEO dbamy o prawidłowe wdrożenie przekierowań, by uniknąć problemów z indeksacją.
- Wymuszanie HTTPS – automatycznie przekierowuje cały ruch z wersji http:// na bezpieczną https://. To standard, który buduje zaufanie użytkowników i jest czynnikiem rankingowym w Google.
- Przyjazne adresy URL – moduł mod_rewrite pozwala na zmianę skomplikowanych adresów (np.
twojastrona.pl/index.php?page=kontakt) na proste i czytelne (np.twojastrona.pl/kontakt). WordPress używa tej funkcji do tworzenia permalinków.
- Własne strony błędów – możesz zdefiniować własne, bardziej pomocne strony dla błędów takich jak 404 (Nie znaleziono) czy 500 (Wewnętrzny błąd serwera).
- Blokowanie dostępu – umożliwia zablokowanie dostępu do strony lub jej części dla wybranych adresów IP, co jest przydatne do ochrony przed spamem i atakami.
- Ochrona katalogów hasłem – pozwala na zabezpieczenie wybranych folderów na serwerze, np. panelu administracyjnego, wymagając od użytkownika podania loginu i hasła.
Jak stworzyć i edytować plik .htaccess?
Stworzenie i edycja pliku .htaccess jest prosta i nie wymaga specjalistycznych narzędzi. Możesz to zrobić na kilka sposobów, w zależności od dostępu do serwera i Twoich preferencji.
Najpierw sprawdź, czy plik już istnieje w głównym katalogu Twojej strony (np. public_html). Ponieważ jest to plik ukryty, upewnij się, że Twój klient FTP lub menedżer plików ma włączoną opcję pokazywania ukrytych plików.
Jeśli pliku nie ma, możesz go utworzyć:
- Za pomocą edytora tekstu – stwórz pusty plik tekstowy na swoim komputerze, nazwij go
.htaccess(upewnij się, że nie ma rozszerzenia .txt) i wgraj go na serwer przez FTP.
- Przez menedżer plików w panelu hostingu – większość paneli (np. cPanel, DirectAdmin) pozwala na tworzenie nowych plików bezpośrednio na serwerze. Użyj opcji „Nowy plik” i nadaj mu nazwę
.htaccess.
- Korzystając z klienta FTP – programy takie jak FileZilla czy WinSCP również umożliwiają tworzenie i edycję plików bezpośrednio na serwerze.
Ważne: Zanim wprowadzisz zmiany, zawsze twórz kopię zapasową istniejącego pliku .htaccess. Błędna składnia może spowodować błąd 500 i unieruchomić całą stronę. Plik musi być zapisany w kodowaniu UTF-8, a jego uprawnienia na serwerze powinny być ustawione na 644, co zapobiega jego publicznemu wykonaniu.
Zaawansowane zastosowania .htaccess dla bezpieczeństwa i wydajności
Poza podstawowymi funkcjami, .htaccess jest potężnym narzędziem do wzmacniania bezpieczeństwa i optymalizacji szybkości ładowania strony. Poniżej znajdziesz konkretne przykłady kodu, które możesz wdrożyć.
Ochrona przed hotlinkingiem i blokowanie botów
Hotlinking to praktyka, w której inne strony wyświetlają Twoje obrazy, obciążając Twój serwer. Możesz temu zapobiec, dodając poniższy kod. Pamiętaj, aby zastąpić twojadomena.pl własnym adresem.
“`apache
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?twojadomena.pl [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ – [NC,F,L]
“`
Możesz także blokować dostęp niechcianym botom i crawlerom, które generują zbędny ruch. Identyfikuje się je po nazwie User-Agent.
“`apache
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} (BadBot|AhrefsBot|SemrushBot|MJ12bot) [NC]
RewriteRule .* – [F,L]
“`
Zabezpieczanie katalogów hasłem
Ochrona katalogu hasłem to skuteczny sposób na ograniczenie dostępu do wrażliwych części Twojej witryny, takich jak panel administracyjny czy pliki deweloperskie. Do jej wdrożenia potrzebujesz dwóch plików: .htaccess w chronionym katalogu oraz pliku .htpasswd z danymi do logowania.
Najpierw utwórz plik .htaccess w katalogu, który chcesz zabezpieczyć, i wklej do niego poniższy kod. Ścieżkę do pliku .htpasswd dostosuj do swojej struktury serwera.
“`apache
AuthType Basic
AuthName “Strefa chroniona”
AuthUserFile /sciezka/do/twojego/katalogu/.htpasswd
Require valid-user
“`
Następnie musisz wygenerować plik .htpasswd. Możesz do tego użyć generatorów online lub narzędzi wiersza poleceń na serwerze. Plik ten zawiera zaszyfrowane hasła i powinien być umieszczony w katalogu niedostępnym publicznie z poziomu przeglądarki (np. o jeden poziom wyżej niż public_html).
Kompresja i kontrola cache w przeglądarce
Kompresja Gzip (lub nowsza Brotli) zmniejsza rozmiar plików tekstowych (HTML, CSS, JS) wysyłanych z serwera, co przyspiesza ładowanie strony. Aby ją włączyć, użyj modułu mod_deflate.
“`apache
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/javascript application/x-javascript application/json application/rss+xml image/svg+xml
</IfModule>
“`
Kontrola pamięci podręcznej przeglądarki (browser caching) za pomocą modułu mod_expires instruuje przeglądarki, jak długo mają przechowywać statyczne zasoby. Dzięki temu powracający użytkownicy nie muszą pobierać ich ponownie. Rozszerzona konfiguracja pozwala precyzyjnie zarządzać różnymi typami plików.
“`apache
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg “access plus 1 year”
ExpiresByType image/jpeg “access plus 1 year”
ExpiresByType image/gif “access plus 1 year”
ExpiresByType image/png “access plus 1 year”
ExpiresByType image/webp “access plus 1 year”
ExpiresByType image/svg+xml “access plus 1 year”
ExpiresByType text/css “access plus 1 month”
ExpiresByType application/javascript “access plus 1 month”
ExpiresByType application/pdf “access plus 1 month”
ExpiresByType application/x-font-woff “access plus 1 year”
</IfModule>
“`
Ustawienie niestandardowych stron błędów
Zamiast domyślnych, technicznych komunikatów serwera, możesz wyświetlać własne, bardziej przyjazne strony błędów. Najpierw stwórz pliki HTML (np. 404.html, 500.html) i umieść je w głównym katalogu strony.
Dobra strona błędu powinna zawierać:
- Wyjaśnienie problemu – prostym językiem poinformuj, co się stało (np. „Strona, której szukasz, nie istnieje”).
- Nawigację – umieść link do strony głównej i najważniejszych sekcji serwisu.
- Wyszukiwarkę – pozwól użytkownikowi szybko znaleźć interesujące go treści.
- Elementy wizualne – zachowaj spójność graficzną z resztą witryny.
- Kod odpowiedzi HTTP – upewnij się, że strona błędu zwraca poprawny kod (np. 404, a nie 200), aby nie wprowadzać w błąd robotów wyszukiwarek.
Następnie dodaj odpowiednie dyrektywy w pliku .htaccess:
“`apache
ErrorDocument 403 /blad403.html
ErrorDocument 404 /blad404.html
ErrorDocument 500 /blad500.html
“`
Zmiana domyślnej wersji PHP
Na hostingach współdzielonych plik .htaccess często pozwala na wybór wersji PHP dla Twojej strony, bez zmiany globalnych ustawień serwera. Jest to przydatne do testowania kompatybilności lub gdy Twoja aplikacja wymaga konkretnej wersji interpretera. Zmiana wersji jest kluczowa dla bezpieczeństwa i wydajności, ponieważ nowsze wersje PHP są aktywnie wspierane i zoptymalizowane.
Składnia może się różnić w zależności od konfiguracji hostingu, ale popularne dyrektywy wyglądają następująco (przykłady za cyberfolks.pl):
“`apache
AddHandler application/x-httpd-php56 .php
AddHandler application/x-httpd-php70 .php
AddHandler application/x-httpd-php71 .php
AddHandler application/x-httpd-php72 .php
AddHandler application/x-httpd-php73 .php
AddHandler application/x-httpd-php74 .php
AddHandler application/x-httpd-php80 .php
“`
Przed zmianą zawsze upewnij się, jaka składnia jest wymagana przez Twojego dostawcę hostingu, sprawdzając jego dokumentację techniczną.
Ochrona przed atakami i blokowanie spamu
Plik .htaccess to pierwsza linia obrony przed wieloma typowymi atakami internetowymi i zautomatyzowanym spamem. Możesz go wykorzystać do blokowania dostępu na podstawie różnych kryteriów, utrudniając działanie złośliwym skryptom i botom.
Ochrona przed atakami typu DDoS i Brute-Force
Chociaż .htaccess nie zatrzyma dużego, rozproszonego ataku DDoS, może pomóc w złagodzeniu mniejszych ataków lub spowolnieniu prób logowania typu brute-force. Możesz ograniczyć liczbę żądań z jednego adresu IP, blokując tymczasowo tych, którzy przekraczają ustalony limit. Wymaga to modułu mod_security lub mod_ratelimit na serwerze.
Do ochrony formularza logowania (np. wp-login.php w WordPressie) przed atakami brute-force możesz użyć kombinacji reguł blokujących dostęp dla wszystkich, z wyjątkiem Twojego adresu IP.
“`apache
<Files wp-login.php>
order deny,allow
deny from all
allow from TWOJ.ADRES.IP.1
allow from TWOJ.ADRES.IP.2
</Files>
“`
Blokowanie spamu z formularzy i komentarzy
Spamboty często omijają zabezpieczenia po stronie klienta (jak CAPTCHA) i wysyłają dane bezpośrednio do skryptu obsługującego formularz. Możesz zablokować takie żądania, sprawdzając, czy pochodzą one z Twojej domeny. Boty często nie ustawiają nagłówka HTTP_REFERER, co można wykorzystać.
“`apache
RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .wp-comments-post\.php*
RewriteCond %{HTTP_REFERER} !.*twojadomena.pl.* [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]
“`
Powyższa reguła blokuje żądania POST do pliku komentarzy WordPressa, jeśli nie pochodzą z Twojej domeny lub jeśli User-Agent jest pusty.
Jak unikać błędów i poprawnie pisać reguły?
Poprawna składnia i organizacja pliku .htaccess są kluczowe, aby uniknąć błędów i ułatwić sobie zarządzanie regułami w przyszłości. Stosuj się do kilku prostych zasad, aby Twoje dyrektywy działały prawidłowo.
Najczęstsze błędy składniowe
Nawet drobna pomyłka w składni może spowodować błąd 500. Zwróć uwagę na najczęstsze pułapki:
- Literówki w dyrektywach –
RewriteEngin OnzamiastRewriteEngine On.
- Brak
RewriteEngine On– ta linijka jest niezbędna do aktywacji modułumod_rewritei musi znaleźć się przed jakimikolwiek regułamiRewriteRule.
- Nieprawidłowa kolejność reguł – reguły są przetwarzane od góry do dołu. Bardziej szczegółowe warunki powinny znaleźć się przed ogólnymi, aby nie zostały przez nie nadpisane.
- Niedozwolone znaki lub spacje – ukryte znaki, np. skopiowane z edytora tekstu, mogą powodować błędy. Upewnij się, że plik jest w formacie czystego tekstu (plain text).
- Używanie dyrektyw niedostępnych na serwerze – jeśli hostingodawca wyłączył dany moduł (np.
mod_expires), próba jego użycia zakończy się błędem. Sprawdź konfigurację serwera (np. przezphpinfo()).
Najlepsze praktyki organizacji kodu
Czytelny plik .htaccess to łatwiejsze debugowanie i modyfikacje. Pamiętaj o dobrych praktykach:
- Używaj komentarzy – każdą sekcję reguł poprzedzaj komentarzem, który wyjaśnia jej przeznaczenie. Komentarze zaczynają się od znaku
#.
- Grupuj reguły tematycznie – trzymaj razem dyrektywy dotyczące bezpieczeństwa, przekierowań, kompresji itd. Ułatwi to szybkie znalezienie potrzebnego fragmentu.
- Zachowaj wcięcia i puste linie – formatowanie kodu poprawia jego czytelność. Oddzielaj bloki logiczne pustymi liniami.
- Regularnie rób porządki – usuwaj stare, nieaktywne lub zduplikowane reguły, które mogły zostać dodane przez wtyczki lub poprzednich deweloperów.
Przykład: Dobrze zorganizowany plik .htaccess.
“`apache
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Redirect 301 /stary-blog /nowy-blog
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
“`
Jak debugować i testować zmiany w .htaccess?
Błąd w pliku .htaccess najczęściej objawia się jako błąd 500 (Internal Server Error), który powoduje, że cała witryna staje się niedostępna. Kluczem do rozwiązania problemu jest systematyczne podejście i identyfikacja wadliwej reguły, zanim wprowadzisz zmiany na stałe.
Testowanie reguł przed wgraniem na serwer
Nigdy nie edytuj pliku .htaccess bezpośrednio na serwerze produkcyjnym. Zamiast tego skorzystaj z bezpieczniejszych metod:
- Środowisko stagingowe – najlepszym rozwiązaniem jest posiadanie kopii strony (staging), na której możesz bezpiecznie testować wszystkie zmiany, w tym reguły .htaccess. Po potwierdzeniu, że wszystko działa, przenieś zmiany na produkcję.
- Narzędzia online do testowania – istnieją walidatory, które pomagają sprawdzić składnię reguł
mod_rewrite. Narzędzia takie jakhtaccess tester by lynt.iopozwalają wprowadzić reguły i testowy adres URL, aby zobaczyć wynik ich działania.
Przed wgraniem pliku na serwer stwórz jego kopię zapasową. W razie problemów będziesz mógł szybko przywrócić poprzednią, działającą wersję.
Co zrobić, gdy strona przestanie działać (błąd 500)?
Jeśli po modyfikacji pliku .htaccess zobaczysz błąd 500, postępuj według poniższych kroków:
1. Przywróć kopię zapasową – najszybszym sposobem na przywrócenie działania strony jest wgranie poprzedniej wersji pliku .htaccess.
2. Sprawdź logi błędów serwera – w panelu hostingu znajdź logi błędów Apache (error logs). Znajdziesz tam precyzyjną informację o linii i rodzaju błędu w pliku .htaccess, co znacznie przyspieszy jego naprawę.
3. Debuguj metodą prób i błędów – jeśli nie masz dostępu do logów, komentuj (dodając # na początku linii) ostatnio dodane reguły jedna po drugiej. Po zakomentowaniu każdej z nich zapisz plik i odśwież stronę. Gdy strona zacznie działać, zidentyfikowałeś problematyczną linię.
Ograniczenia i alternatywy dla pliku .htaccess
Mimo swojej wygody, plik .htaccess ma pewne ograniczenia, a na serwerach innych niż Apache stosuje się zupełnie inne metody konfiguracji. Warto znać te różnice, aby wybrać odpowiednie narzędzie do zadania.
Wpływ na wydajność i inne ograniczenia
Głównym ograniczeniem .htaccess jest jego wpływ na wydajność. Serwer Apache musi szukać pliku .htaccess i interpretować go przy każdym żądaniu w danym katalogu i we wszystkich katalogach nadrzędnych. Przy dużej liczbie reguł i skomplikowanej strukturze folderów może to prowadzić do niewielkiego, ale zauważalnego spowolnienia.
Inne ograniczenia to:
- Zależność od konfiguracji serwera – administrator serwera może ograniczyć lub wyłączyć możliwość używania plików .htaccess za pomocą dyrektywy
AllowOverride Nonew głównym pliku konfiguracyjnym. Może również wyłączyć poszczególne moduły, uniemożliwiając użycie powiązanych z nimi dyrektyw.
- Brak dostępu na niektórych platformach – niektóre zarządzane platformy hostingowe (np. dla WordPressa) celowo blokują dostęp do .htaccess, przenosząc konfigurację do własnych paneli lub plików na wyższym poziomie.
Konfiguracja na serwerach Nginx i innych
Pliki .htaccess działają tylko na serwerach Apache. Inne popularne serwery WWW, takie jak Nginx, używają odmiennych systemów konfiguracji.
| Serwer | Metoda konfiguracji | Opis |
| :— | :— | :— |
| Nginx | Pliki .conf w katalogu /etc/nginx/ | Nginx nie obsługuje plików konfiguracyjnych na poziomie katalogów. Wszystkie reguły, takie jak przekierowania czy przepisywanie URL, muszą być zdefiniowane w centralnych plikach konfiguracyjnych serwera, w bloku server { ... }. Zmiany wymagają przeładowania konfiguracji Nginx (sudo nginx -s reload). |
| LiteSpeed | Zgodność z .htaccess | Serwer LiteSpeed jest zaprojektowany jako zamiennik Apache i w pełni obsługuje składnię plików .htaccess, często oferując przy tym wyższą wydajność. |
| Microsoft IIS | Plik web.config | Serwer Microsoftu używa plików web.config opartych na formacie XML. Pełnią one podobną rolę co .htaccess, pozwalając na konfigurację na poziomie katalogów. Reguły przepisywania URL implementuje się za pomocą modułu URL Rewrite. |
Plik .htaccess w WordPressie i innych systemach CMS
Plik .htaccess odgrywa kluczową rolę w popularnych systemach zarządzania treścią, takich jak WordPress, Joomla czy Drupal. Odpowiada głównie za tworzenie przyjaznych adresów URL, ale także za bezpieczeństwo.
W WordPressie domyślny plik .htaccess jest generowany automatycznie po włączeniu „Przyjaznych odnośników” (permalinks) w ustawieniach. Jego głównym zadaniem jest przekierowanie wszystkich żądań do pliku index.php, który następnie ładuje odpowiednią podstronę lub wpis. Wiele wtyczek do SEO i bezpieczeństwa również dodaje własne reguły do tego pliku, np. w celu implementacji cache’owania czy blokowania złośliwego ruchu.
Podobnie w Joomla czy Drupal, plik .htaccess jest wykorzystywany przez systemowy mechanizm przepisywania adresów URL. W przypadku tych CMS-ów często znajdziesz w głównym katalogu plik htaccess.txt, który należy ręcznie przemianować na .htaccess, aby aktywować jego działanie.
Ważne: Zabezpiecz plik .htaccess przed nieautoryzowanym dostępem. Ustaw jego uprawnienia na serwerze na 644 i dodaj poniższy kod, aby uniemożliwić jego odczytanie z poziomu przeglądarki.
“`apache
<files .htaccess>
Require all denied
</files>
“`
Najczęściej zadawane pytania (FAQ)
Oto odpowiedzi na pytania, które często pojawiają się w kontekście zarządzania plikiem .htaccess.
1. Gdzie znajduje się plik .htaccess?
Plik .htaccess znajduje się w głównym katalogu Twojej strony internetowej, najczęściej public_html lub www. Jest on plikiem ukrytym, więc może być konieczne włączenie opcji pokazywania ukrytych plików w Twoim kliencie FTP lub menedżerze plików.
2. Dlaczego nie widzę pliku .htaccess na serwerze?
Jeśli go nie widzisz, upewnij się, że opcja pokazywania ukrytych plików jest włączona. Jeśli pliku nadal nie ma, może to oznaczać, że nie został jeszcze utworzony (np. w WordPressie nie ustawiono przyjaznych odnośników). Możesz go stworzyć ręcznie.
3. Czy mogę usunąć plik .htaccess?
Technicznie tak, ale nie jest to zalecane, zwłaszcza w systemach CMS takich jak WordPress. Usunięcie go spowoduje, że przyjazne adresy URL przestaną działać, a strona będzie wyświetlać błędy 404 na wszystkich podstronach poza główną.
4. Jak błąd w .htaccess wpływa na stronę?
Najczęstszym skutkiem błędu składni w pliku .htaccess jest błąd 500 (Internal Server Error), który sprawia, że cała witryna staje się niedostępna. Dlatego tak ważne jest tworzenie kopii zapasowych przed każdą edycją.
5. Czy plik .htaccess spowalnia stronę?
Tak, używanie .htaccess może nieznacznie spowolnić działanie serwera, ponieważ plik musi być odczytywany i interpretowany przy każdym żądaniu. Przy typowych zastosowaniach spadek wydajności jest jednak niezauważalny dla użytkownika.
6. Czym różni się .htaccess od httpd.conf?
httpd.conf to główny plik konfiguracyjny serwera Apache, który ma globalny zasięg. .htaccess działa na poziomie katalogu i jego zmiany nie wymagają restartu serwera. Konfiguracja w httpd.conf jest szybsza, ale wymaga dostępu administratora do serwera.
7. Jak zabezpieczyć sam plik .htaccess?
Ustaw uprawnienia pliku na serwerze na 644, co pozwala na odczyt i zapis tylko właścicielowi. Dodatkowo, umieść w nim regułę <files .htaccess> Require all denied </files>, aby zablokować dostęp do niego z poziomu przeglądarki.
8. Czy reguły w .htaccess są zależne od wersji Apache?
Tak, niektóre dyrektywy mogą być przestarzałe w nowszych wersjach Apache, a inne mogą być nowymi funkcjami. Na przykład składnia kontroli dostępu zmieniła się znacząco między wersjami Apache 2.2 a 2.4 (np. Allow from all zostało zastąpione przez Require all granted). Zawsze sprawdzaj dokumentację dla swojej wersji serwera.

Od 8 lat nieustannie związany z marketingiem internetowym. Zajmuje się kompleksową obsługą przedsiębiorstw w zakresie SEO oraz AI. W wolnym czasie poszerzam swoją wiedzę z zakresu marketingu internetowego.







