# # BEGIN: backends.cnf # backend letsencrypt server letsencrypt 127.0.0.1:8080 backend be_api mode http http-request set-path /img/favicon.ico if { path_end -i favicon.ico } or { path_end -i favicon } or { path_beg -i /apps/theming/favicon/ } # Nextcloud use /avatar/username/32 /avatar/username/64 and /avatar/username/128 http-request set-path %[path,regsub(\"^(/avatar/[^/]+).*\",\"\1\")] server api dd-sso-api:80 check port 80 inter 5s rise 2 fall 10 resolvers mydns init-addr none backend be_sso mode http option httpclose http-response replace-header Set-Cookie (KEYCLOAK_LOCALE=[^;]*);(.*) \1;Domain="${DOMAIN}";Version=1;Path=/;Secure; server keycloak dd-sso-keycloak:8080 check port 8080 inter 5s rise 2 fall 10 resolvers mydns init-addr none backend be_admin mode http timeout queue 600s timeout server 600s timeout connect 600s server dd-sso-admin dd-sso-admin:9000 check port 9000 inter 5s rise 2 fall 10 resolvers mydns init-addr none ## APPS backend be_moodle mode http server moodle dd-apps-moodle:8080 check port 8080 inter 5s rise 2 fall 10 resolvers mydns init-addr none backend be_moodle_long mode http timeout server 900s server moodle dd-apps-moodle:8080 check port 8080 inter 5s rise 2 fall 10 resolvers mydns init-addr none backend be_nextcloud mode http server nextcloud dd-apps-nextcloud-app:80 check port 80 inter 5s rise 2 fall 10 resolvers mydns init-addr none backend be_etherpad mode http server etherpad dd-apps-etherpad:9001 check port 9001 inter 5s rise 2 fall 10 resolvers mydns init-addr none backend be_oof mode http server onlyoffice dd-apps-onlyoffice:80 check port 80 inter 5s rise 2 fall 10 resolvers mydns init-addr none backend be_wp mode http # Add security headers here, as WP is a tad of a pain to setup http-response set-header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; connect-src 'self'; img-src 'self' data: *; style-src 'self' 'unsafe-inline' data: fonts.googleapis.com maxcdn.bootstrapcdn.com; font-src 'self' data: fonts.gstatic.com maxcdn.bootstrapcdn.com; frame-src youtube.com https://www.youtube.com" http-response set-header X-Content-Type-Options "nosniff" server wp dd-apps-wordpress:80 check port 80 inter 5s rise 2 fall 10 resolvers mydns init-addr none # # END: backends.cnf #