Grav的Caddy配置

这是一份通过Caddy访问Grav的Caddy配置文件,只需要将所有请求重定向到index.php即可。

Caddyfile

  1. example.com {
  2. root /path/to/site
  3. fastcgi / 127.0.0.1:9000 php
  4. status 403 /forbidden
  5. # Begin - 安全
  6. # 下面的目录不允许被访问
  7. rewrite {
  8. if {path} match /(.git|cache|bin|logs|backups|tests)/.*$
  9. to /forbidden
  10. }
  11. # 核心系统目录内的这类类型不允许被执行
  12. rewrite {
  13. if {path} match /(system|vendor)/.*\.(txt|xml|md|html|yaml|php|pl|py|cgi|twig|sh|bat)$
  14. to /forbidden
  15. }
  16. # 用户目录下的这类文件不允许被执行
  17. rewrite {
  18. if {path} match /user/.*\.(txt|md|yaml|php|pl|py|cgi|twig|sh|bat)$
  19. to /forbidden
  20. }
  21. # root目录的这些文件不允许被访问
  22. rewrite {
  23. if {path} match /(LICENSE.txt|composer.lock|composer.json|nginx.conf|web.config|htaccess.txt|\.htaccess)
  24. to /forbidden
  25. }
  26. ## End - 安全
  27. # 在最后放全局的重写规则
  28. rewrite {
  29. to {path} {path}/ /index.php?_url={uri}
  30. }
  31. }