Improve example Caddyfile
authorshibayashi <shibayashi@cypherpunk.observer>
Sun, 26 Aug 2018 01:36:52 +0000 (03:36 +0200)
committershibayashi <shibayashi@cypherpunk.observer>
Sun, 26 Aug 2018 01:36:52 +0000 (03:36 +0200)
installation/caddyfile-pleroma.example

index e0f9dc917ae1c43ba9a43b0d0fd16b3342c3ded1..ed24fc16c72f656bd4f7bec9250f62172730003b 100644 (file)
@@ -1,8 +1,32 @@
 social.domain.tld  {
-  tls user@domain.tld
+  log /var/log/caddy/pleroma_access.log
+  errors /var/log/caddy/pleroma_error.log
 
-  log /var/log/caddy/pleroma.log
+  gzip
 
+  proxy / localhost:4000 {
+    websocket
+    transparent
+  }
+
+  tls user@domain.tld {
+    # Remove the rest of the lines in here, if you want to support older devices
+    key_type p256
+    ciphers ECDHE-ECDSA-WITH-CHACHA20-POLY1305 ECDHE-RSA-WITH-CHACHA20-POLY1305 ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256
+  }
+
+  header / {
+    X-XSS-Protection "1; mode=block"
+    X-Frame-Options "DENY"
+    X-Content-Type-Options "nosniff"
+    Referrer-Policy "same-origin"
+    Strict-Transport-Security "max-age=31536000; includeSubDomains;"
+    Expect-CT "enforce, max-age=2592000"
+  }
+
+  # If you do not want remote frontends to be able to access your Pleroma backend server, remove these lines.
+  # If you want to allow all origins access, remove the origin lines.
+  # To use this directive, you need the http.cors plugin for Caddy.
   cors / {
     origin https://halcyon.domain.tld
     origin https://pinafore.domain.tld
@@ -10,9 +34,13 @@ social.domain.tld  {
     allowed_headers Authorization,Content-Type,Idempotency-Key
     exposed_headers Link,X-RateLimit-Reset,X-RateLimit-Limit,X-RateLimit-Remaining,X-Request-Id
   }
+  # Stop removing lines here.
 
-  proxy / localhost:4000 {
-    websocket
-    transparent
+  # If you do not want to use the mediaproxy function, remove these lines.
+  # To use this directive, you need the http.cache plugin for Caddy.
+  cache {
+    match_path /proxy
+    default_max_age 720m
   }
+  # Stop removing lines here.
 }