Advertisement
Guest User

Untitled

a guest
Nov 21st, 2017
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.98 KB | None | 0 0
  1. vcl 4.0;
  2. import std;
  3.  
  4. backend pleroma {
  5. .host = "192.168.10.91";
  6. .port = "4000";
  7. }
  8.  
  9. sub vcl_recv {
  10. # Pleroma should not get cached unless it's media
  11. if (req.http.host ~ "social.cheesebsd.com") {
  12. set req.backend_hint = pleroma;
  13. if (req.http.upgrade ~ "(?i)websocket") {
  14. return (pipe);
  15. }
  16. if ((req.url ~ "^/(media|static)/") ||
  17. (req.url ~ "(?i)\.(js|css|jpg|jpeg|png|gif|gz|tgz|bz2|tbz|mp3|ogg|svg|swf|ttf|pdf|woff|woff2)$") ||
  18. (req.url ~ "^/api/v1/statuses/.*/context")) {
  19. unset req.http.Cookie;
  20. unset req.http.Authorization;
  21. return (hash);
  22. }
  23. }
  24. }
  25.  
  26. sub vcl_backend_response {
  27. # etags are bad
  28. unset beresp.http.etag;
  29.  
  30. # Default object caching of 86400s;
  31. set beresp.ttl = 86400s;
  32. # Allow caching for 6h in case backend goes down
  33. set beresp.grace = 6h;
  34.  
  35. # Do not cache 5xx responses
  36. if (beresp.status == 500 || beresp.status == 502 || beresp.status == 503 || beresp.status == 504) {
  37. set beresp.uncacheable = true;
  38. return (abandon);
  39. #return (retry);
  40. }
  41.  
  42. # Do not cache redirects and errors
  43. if (beresp.status >= 300) {
  44. set beresp.uncacheable = true;
  45. set beresp.ttl = 30s;
  46. return (deliver);
  47. }
  48.  
  49. if (bereq.backend == pleroma) {
  50. if ((bereq.url ~ "(?i)\.(js|css|jpg|jpeg|png|gif|gz|tgz|bz2|tbz|mp3|ogg|svg|swf|ttf|pdf|woff|woff2)$") ||
  51. (bereq.url ~ "^/api/v1/statuses/.*/context") ||
  52. (bereq.url ~ "^/api/v1/custom_emojis"))
  53. {
  54. set beresp.ttl = 86400s;
  55. unset beresp.http.set-cookie;
  56. unset beresp.http.Cache-Control;
  57. unset beresp.http.x-request-id;
  58. set beresp.http.Cache-Control = "public, max-age=86400";
  59. }
  60. }
  61. }
  62.  
  63. sub vcl_pipe {
  64. if (req.http.upgrade) {
  65. set bereq.http.upgrade = req.http.upgrade;
  66. set bereq.http.connection = req.http.connection;
  67. }
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement