- Strona główna
- Forum
- PHP Fusion v9 instalacja konfiguracja CMS
- Modyfikacja pliku htaccess w PHP Fusion v9 omówienie i kolejność reguł
Modyfikacja pliku htaccess w PHP Fusion v9 omówienie i kolejność reguł
Ostatnia aktualizacja 4 miesiąc temu
.htaccess w PHP Fusion v9 – krótkie wyjaśnienie reguł
Poniżej najważniejsze reguły z pliku .htaccess, z krótkim opisem co robią i kiedy ich NIE używać.
Pełny plik wrzucam jako załącznik do pobrania – większość i tak go tylko wgra 😉
Ten post jest po to, żebyś wiedział co ewentualnie usunąć lub zmienić.
[h]Podstawy[/h3]
Wyłącza listowanie katalogów
Bezpieczne – można zostawić zawsze
Options -IndexesWymusza UTF-8 dla strony i zasobów
Bezpieczne – zalecane
AddDefaultCharset UTF-8 AddCharset UTF-8 .html .css .js .svg .woff .woff2 Wymuszenie konkretnej wersji PHP
UŻYWAĆ TYLKO jeśli serwer NIE ma wyboru wersji PHP w panelu.
Jeśli serwer nie obsługuje PHP 7.3 – strona padnie
AddType application/x-httpd-php73 .phpOchrona plików
Ukrywa informacje o serwerze
ServerSignature OffBlokada dostępu do plików wrażliwych
Bezpieczne – zalecane
▶️ Rozwiń 🔽
<Files .htaccess>
Require all denied
</Files>
<Files config.php>
Require all denied
</Files>
<Files fusion_error_log.log>
Require all denied
</Files>
<Files *.cache>
Require all denied
</Files>
Blokowanie plików JSON
Blokuje dostęp do plików .json (częsty cel skanerów)
Jeśli korzystasz z API lub JSON publicznie – USUŃ
RewriteEngine On
RewriteRule ^[^/]+.json$ - [F,L]
RewriteRule ^.+/.*.json$ - [F,L]
Nagłówki bezpieczeństwa i cache
Nagłówki bezpieczeństwa
HSTS DZIAŁA TYLKO jeśli masz HTTPS
<IfModule mod_headers.c>
Header set X-Content-Type-Options "nosniff"
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
</IfModule>👉 Jeśli NIE masz HTTPS – usuń HSTS, inaczej:
[list]
[*]przeglądarka zapamięta HTTPS
[*]strona może przestać się otwierać
[/list]
Cache dla statycznych plików (wydajność)
Bezpieczne – zalecane
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/png "access plus 1 year"
ExpiresByType text/css "access plus 1 year"
ExpiresByType application/javascript "access plus 1 year"
ExpiresByType font/woff2 "access plus 1 year"
</IfModule>Wymuszanie HTTPS
Wymuszenie HTTPS
NIE DODAWAJ jeśli serwer NIE MA certyfikatu SSL.
Grozi pętlą przekierowań lub ostrzeżeniem o oszustwie
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Anti-scan / boty
Blokada znanych nazw backdoorów i skanerów
Nie robimy wyjątków dla User-Agent
RewriteCond %{REQUEST_URI} ^/(widgets|b|cachex|wpup|admin).php$ [NC]
RewriteRule .* - [F,L]
Próby dostępu do plików WordPressa
RewriteCond %{REQUEST_URI} ^/wp-.*.php$ [NC]
RewriteRule . - [F,L]
Adresy bez .php
Umożliwia adresy bez rozszerzenia .php
Działa tylko jeśli plik PHP faktycznie istnieje
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ $1.php
Router PHP Fusion – ZAWSZE NA KOŃCU
Główny router PHP Fusion
MUSI być ostatnią regułą
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_URI} !^/(administration|config|index.php)
RewriteRule ^(.*?)$ index.php [L]
Ważne
[list]
[*]Nie wklejaj wszystkiego w ciemno
[*]HTTPS i PHP to najczęstsze pułapki
[*]Jeśli coś nie działa → komentuj sekcjami
[/list]
Pełny, gotowy plik .htaccess jest w załączniku
(dostępny dla zalogowanych użytkowników).
Pełny opis i kontekst:
https://phpfusion9.pl/artykul/83/mody...

Nie masz dostępu do przeglądania załączników
możesz przeglądać wszystkie wątki dyskusji na tym forum.
nie możesz rozpocząć nowy wątek dyskusji na tym forum.
nie możesz odpowiadać na posty w tym wątku dyskusji.
nie możesz rozpocząć ankietę na tym forum.
nie możesz dodawać załączniki w tym forum.
nie możesz pobierać załączniki na tym forum.
nie możesz rozpocząć nowy wątek dyskusji na tym forum.
nie możesz odpowiadać na posty w tym wątku dyskusji.
nie możesz rozpocząć ankietę na tym forum.
nie możesz dodawać załączniki w tym forum.
nie możesz pobierać załączniki na tym forum.
Użytkownicy, którzy uczestniczyli w dyskusji: Mirek