# =========================
# PhotoPrint: .htaccess
# Корень проекта
# =========================

# Включаем mod_rewrite
RewriteEngine On

# Базовый путь (если проект в поддиректории, исправьте)
RewriteBase /public

# -------------------------
# Чистые URL (необязательно, если используете только PHP файлы)
# -------------------------
Пример: /login -> /public/login.php
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^([a-zA-Z0-9_-]+)$ public/$1.php [L,QSA]

# -------------------------
# Запрет доступа к конфигам и системным файлам
# -------------------------
<FilesMatch "^(config|includes|storage|\.env|\.htaccess|composer\.json|composer\.lock|package\.json|webpack\.mix\.js)$">
    Require all denied
</FilesMatch>

# -------------------------
# Запрет листинга директорий
# -------------------------
Options -Indexes

# -------------------------
# Защита от выполнения скриптов в папках загрузки
# -------------------------
<Directory "/uploads/photos">
    Options -Indexes
    <FilesMatch "\.(php|phtml|phar|cgi|pl|py|asp|aspx)$">
        Require all denied
    </FilesMatch>
</Directory>

# -------------------------
# MIME-типы для изображений
# -------------------------
AddType image/jpeg .jpg .jpeg
AddType image/png .png
AddType image/gif .gif
AddType image/webp .webp
AddType image/svg+xml .svg

# -------------------------
# Безопасность XSS и Clickjacking
# -------------------------
<IfModule mod_headers.c>
    Header set X-Content-Type-Options "nosniff"
    Header set X-Frame-Options "SAMEORIGIN"
    Header set X-XSS-Protection "1; mode=block"
</IfModule>
