# ---------------------------------------------------------------------------
# SimpleNav —— assets/ 静态资源缓存策略
#
# 背景与理由：
#   PHP 动态页面统一用 send_no_cache() 声明「不要缓存」；而 CSS / JS / 图标 /
#   字体这类静态资源如果也不缓存，每次访问都要重新下载一遍，白白浪费带宽。
#   这里采用「长缓存 + 版本号」策略：页面引用资源时一律带 ?v=<mtime>-<size>
#   （见 functions.php 的 asset() / icon_src()），文件内容一变版本号就变，
#   浏览器自然会重新拉取，所以可以放心地给一年缓存。
#
# 注意：本目录下的文件不会被 Nginx 的 fastcgi_cache 影响（不经过 PHP）。
# ---------------------------------------------------------------------------
<IfModule mod_headers.c>
  <FilesMatch "\.(css|js|mjs|png|jpg|jpeg|gif|svg|webp|avif|ico|woff|woff2|ttf|otf|eot|webmanifest)$">
    Header set Cache-Control "public, max-age=31536000, immutable"
  </FilesMatch>
</IfModule>

# 禁止在静态目录执行脚本
<FilesMatch "\.(php|phtml|phar|pl|py|cgi|asp|jsp|sh)$">
<IfModule mod_authz_core.c>
  Require all denied
</IfModule>
<IfModule !mod_authz_core.c>
  Order allow,deny
  Deny from all
</IfModule>
</FilesMatch>
Options -ExecCGI
