# 启用Rewrite引擎
RewriteEngine On

# 设置默认字符集
AddDefaultCharset UTF-8

# 禁止目录浏览（防止列出文件列表）
Options -Indexes

# 保护敏感文件不被直接访问
<FilesMatch "(^config\.php|db_connect\.php|email_utils\.php|.*\.sql|.*\.log)$">
    Order allow,deny
    Deny from all
</FilesMatch>

# 保护.htaccess文件本身
<Files .htaccess>
    Order allow,deny
    Deny from all
</Files>

# 设置默认文档
DirectoryIndex index.php verify.php

# 简化URL（可选）
# 将 /verify?code=XXX 重写为 /verify/XXX
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^verify/([A-Za-z0-9\-]+)$ verify.php?card_code=$1 [L,QSA]

# 后台路径保护（可选，限制特定IP访问）
# <IfModule mod_authz_core.c>
#     <Location "/admin">
#         Require ip 192.168.1.0/24 127.0.0.1
#     </Location>
# </IfModule>

# 安全相关HTTP头设置
<IfModule mod_headers.c>
    # 防止XSS攻击
    Header set X-XSS-Protection "1; mode=block"
    # 防止点击劫持
    Header set X-Frame-Options "SAMEORIGIN"
    # 防止MIME类型嗅探
    Header set X-Content-Type-Options "nosniff"
    # 内容安全策略（根据实际需求调整）
    Header set Content-Security-Policy "default-src 'self'; script-src 'self' https://cdn.tailwindcss.com https://cdn.jsdelivr.net; style-src 'self' https://cdn.tailwindcss.com https://cdn.jsdelivr.net; font-src https://cdn.jsdelivr.net;"
</IfModule>

# 错误页面配置
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php
    