aboutsummaryrefslogtreecommitdiff
path: root/infra/Caddyfile
blob: 31465295b2e22a8b5ac0c0380cc7cd628b76b83f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
# Copyright (C) 2026 Doan Luu Duc Tai <doan@luuduct.ai>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program.  If not, see <https://www.gnu.org/licenses/>.

(https_security) {
    header >Strict-Transport-Security "max-age=31536000"
}

luuduct.ai {
	import https_security
	handle /.well-known/openpgpkey/* {
		root * /srv
		header Content-Type application/octet-stream
		file_server
	}

	handle {
		redir https://doan.luuduct.ai{uri} permanent
	}
}

www.luuduct.ai {
	import https_security
	redir https://doan.luuduct.ai{uri} permanent
}

doan.luuduct.ai {
	import https_security
	root * /srv
	file_server

	redir /git /git/

	handle /cgit* {
		reverse_proxy cgit:8080
	}

	handle /git/* {
		reverse_proxy cgit:8080
	}
}

openpgpkey.luuduct.ai {
	import https_security
	handle /.well-known/openpgpkey/* {
		root * /srv
		header Content-Type application/octet-stream
		file_server
	}
}

git.doan.luuduct.ai {
	import https_security
	redir /{path}.git /{path} permanent

	reverse_proxy cgit:8080
}

search.doan.luuduct.ai {
	import https_security
	reverse_proxy searxng:8080
}

www.doan.luuduct.ai {
	import https_security
    redir https://doan.luuduct.ai{uri} permanent
}

www.git.doan.luuduct.ai {
	import https_security
    redir https://git.doan.luuduct.ai{uri} permanent
}

www.search.doan.luuduct.ai {
	import https_security
    redir https://search.doan.luuduct.ai{uri} permanent
}

www.openpgpkey.luuduct.ai {
    import https_security
    redir https://openpgpkey.luuduct.ai{uri} permanent
}