Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS
Mirrored from https://github.com/Slazee/caddy.git
Synced Nov 14, 05:15 UTC
fileserver: Add `disable_canonical_uris` Caddyfile subdirective (#4222)
* feat(fileserver): add 'canonical_uris' parameter to caddyfile add 'canonical_uris' parameter to caddyfile reference #2741 Signed-off-by: mritd <mritd@linux.com> * feat(file_server): rename subdirective canonical_uris to disable_canonical_uris rename subdirective canonical_uris to disable_canonical_uris Signed-off-by: mritd <mritd@linux.com> * test(caddyfile_adapt): add disable_canonical_uris subdirective test file add disable_canonical_uris subdirective test file Signed-off-by: mritd <mritd@linux.com>
mritd committed
Jul 2, 2021 at 07:22 UTC
4245ceb67d1a40ce7a691bcf85e143218e5c458c
2 files changed
+40
caddytest/integration/caddyfile_adapt/file_server_disable_canonical_uris.txt
new
+32
@@ -0,0 +1,32 @@
1
+:80
2
+
3
+file_server {
4
+ disable_canonical_uris
5
+}
6
+----------
7
+{
8
+ "apps": {
9
+ "http": {
10
+ "servers": {
11
+ "srv0": {
12
+ "listen": [
13
+ ":80"
14
+ ],
15
+ "routes": [
16
+ {
17
+ "handle": [
18
+ {
19
+ "canonical_uris": false,
20
+ "handler": "file_server",
21
+ "hide": [
22
+ "./Caddyfile"
23
+ ]
24
+ }
25
+ ]
26
+ }
27
+ ]
28
+ }
29
+ }
30
+ }
31
+ }
32
+}
modules/caddyhttp/fileserver/caddyfile.go
+8
@@ -41,6 +41,7 @@ func init() {
41
// browse [<template_file>]
42
// precompressed <formats...>
43
// status <status>
44
+// disable_canonical_uris
45
// }
46
//
47
func parseCaddyfile(h httpcaddyfile.Helper) (caddyhttp.MiddlewareHandler, error) {
@@ -112,6 +113,13 @@ func parseCaddyfile(h httpcaddyfile.Helper) (caddyhttp.MiddlewareHandler, error)
113
}
114
fsrv.StatusCode = caddyhttp.WeakString(h.Val())
115
116
+ case "disable_canonical_uris":
117
+ if h.NextArg() {
118
+ return nil, h.ArgErr()
119
+ }
120
+ falseBool := false
121
+ fsrv.CanonicalURIs = &falseBool
122
+
123
default:
124
return nil, h.Errf("unknown subdirective '%s'", h.Val())
125
}