{
	email admin@{$DOMAIN}
	admin off
}

{$DOMAIN} {
	encode zstd gzip

	log {
		output file /var/log/caddy/access.log {
			roll_size 50MiB
			roll_keep 10
			roll_keep_for 720h
		}
		format json
	}

	header {
		Strict-Transport-Security "max-age=31536000; includeSubDomains"
		X-Content-Type-Options "nosniff"
		Referrer-Policy "no-referrer"
		Permissions-Policy "camera=(), microphone=(), geolocation=()"
		-Server
	}

	@upload method POST
	handle @upload {
		request_body {
			max_size {$MAX_UPLOAD_SIZE}
		}
		reverse_proxy rustypaste:8000
	}

	handle / {
		root * /srv/dropfo
		file_server
	}

	handle /index.html {
		root * /srv/dropfo
		file_server
	}

	handle /assets/* {
		root * /srv/dropfo
		file_server
	}

	handle /abuse {
		rewrite * /pages/abuse.html
		root * /srv/dropfo
		file_server
	}

	handle /canary {
		rewrite * /pages/canary.html
		root * /srv/dropfo
		file_server
	}

	handle /canary.txt {
		root * /srv/dropfo
		file_server
	}

	handle /canary.txt.asc {
		root * /srv/dropfo
		file_server
	}

	handle {
		reverse_proxy rustypaste:8000
	}
}
