# miniPHP - .htaccess

Options -Indexes
# ------------------------------------------------------------
# 1. Wymuszenie HTTPS
# ------------------------------------------------------------
# Przekierowanie 301 z HTTP na HTTPS.
# Jeśli certyfikat jest już aktywny, każda próba wejścia
# przez http:// zostanie przekierowana na https://.
RewriteEngine On
#RewriteCond %{HTTPS} !=on
#RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

# ------------------------------------------------------------
# 2. Adresy 
# ------------------------------------------------------------

# Plik weryfikacyjny Google Search Console
RewriteRule ^google[A-Za-z0-9]+\.html$ - [L]
# Strona główna.
RewriteRule ^index\.html$ index.php [L,QSA]
# Panel administracyjny.
RewriteRule ^admin-panel\.html$ index.php?admin=panel [L,QSA]
RewriteRule ^admin-static\.html$ index.php?admin=static [L,QSA]
RewriteRule ^admin-uploader\.html$ index.php?admin=uploader [L,QSA]
RewriteRule ^admin-logout\.html$ index.php?admin=logout [L,QSA]
# Pozostałe strony panelu administracyjnego.
RewriteRule ^admin-([A-Za-z0-9_-]+)\.html$ index.php?admin=$1 [L,QSA]
# Formularz kontaktowy.
RewriteRule ^kontakt\.html$ index.php?go=kontakt [L,QSA]
# Zwykłe strony z menu, np. o-nas.html -> index.php?go=o-nas
RewriteRule ^([A-Za-z0-9_-]+)\.html$ index.php?go=$1 [L,QSA]

# ------------------------------------------------------------
# 3. Ochrona plików konfiguracyjnych i danych
# ------------------------------------------------------------

<FilesMatch "^(config\.inc\.php|.*\.txt|.*\.theme|.*\.inc)$">
    Require all denied
</FilesMatch>

<FilesMatch "^\.">
    Require all denied
</FilesMatch>
