Apache2
Serwowanie treści
Written By Coder Matthew
Last updated 6 months ago
1) Wprowadzenie
Apache2 to jeden z najpopularniejszych serwerów HTTP używanych do serwowania stron internetowych i aplikacji webowych. Umożliwia obsługę zarówno statycznych plików (HTML, CSS, JS), jak i dynamicznych skryptów (PHP, Python, itp.).
Pliki .htaccess to lokalne pliki konfiguracyjne, które pozwalają modyfikować ustawienia serwera w obrębie konkretnego katalogu bez potrzeby zmiany globalnej konfiguracji Apache. Dzięki nim można m.in.:
Wymuszać przekierowania i przyjazne URL-e.
Chronić katalogi hasłem.
Blokować dostęp z wybranych adresów IP.
Obsługiwać niestandardowe strony błędów (404, 403).
Włączać lub wyłączać funkcje serwera, np. cache lub kompresję.
Dzięki połączeniu Apache2 + .htaccess administratorzy mogą elastycznie zarządzać dostępem, bezpieczeństwem i ścieżkami na serwerze.
2) Przykład
# Blokada dostępu do katalogów
Options -Indexes
# Ustawienie niestandardowych stron błędów
ErrorDocument 404 /errors/404.html
ErrorDocument 403 /errors/403.html
# Włączenie cache dla przeglądarki
<IfModule mod_headers.c>
Header set Cache-Control "max-age=3600, public"
</IfModule>
# Zabezpieczenie pliku .htaccess
<Files .htaccess>
Require all denied
</Files>W tym przykładzie:
Options -Indexesuniemożliwia przeglądanie zawartości katalogu.ErrorDocumentpozwala ustawić własne strony błędów.Nagłówki HTTP kontrolują cache przeglądarki.
.htaccesschroniony przed dostępem z zewnątrz.
3) Zastosowanie
Bitfun używa Apache2 + .htaccess do kontroli bezpieczeństwa i kierowania użytkowników na odpowiednie strony:
<IfModule mod_headers.c>
Header set Cache-Control "no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires 0
</IfModule>
<IfModule mod_dir.c>
DirectoryIndex index.html index.php
</IfModule>
<IfModule mod_alias.c>
EnableSendfile Off
EnableMMAP Off
</IfModule>
Options -Indexes
<Files .htaccess>
Order allow,deny
Deny from all
</Files>
ErrorDocument 404 https://matthew.elita.fun/bitfun/errors/error_404.php
ErrorDocument 403 https://matthew.elita.fun/bitfun/errors/error_403.phpTutaj:
Nagłówki
Cache-ControliPragmawymuszają brak cache dla wrażliwych stron.DirectoryIndexustawia domyślne pliki startowe (index.php,index.html).EnableSendfileiEnableMMAPsą wyłączone w celu poprawy kompatybilności.Options -Indexesblokuje listowanie plików katalogu.Plik
.htaccesssam jest chroniony przed dostępem z zewnątrz.Niestandardowe strony błędów 404 i 403 kierują użytkownika na specjalne strony Bitfun.
4) Strony błędu
4.1) Error 404


4.2) Error 403


5) Podsumowanie
Apache2 w połączeniu z .htaccess pozwala na:
Zarządzanie bezpieczeństwem katalogów i plików.
Tworzenie przyjaznych URL-i i przekierowań.
Blokowanie niepożądanych użytkowników na podstawie IP.
Obsługę niestandardowych komunikatów błędów.
Elastyczne dostosowanie konfiguracji w obrębie pojedynczych katalogów.
Bitfun korzysta z tej konfiguracji, aby chronić katalogi użytkowników, kontrolować cache, kierować błędy i zapewnić bezpieczeństwo serwisu.