Kévin Dunglas
b8f729b88f
fix: add more media types to the compressed by default list
2024-02-09 09:35:55 +01:00
Francis Lavoie
8c2a72ad07
matchers: Drop forwarded
option from remote_ip
matcher ( #6085 )
2024-02-07 10:09:29 -05:00
Francis Lavoie
bde46211e3
caddyhttp: Test cases for %2F
and %252F
( #6084 )
2024-02-07 05:13:17 -05:00
Aziz Rmadi
feb07a7b59
fileserver: Browse can show symlink target if enabled ( #5973 )
...
* Added optional subdirective to browse allowing to reveal symlink paths.
* Update modules/caddyhttp/fileserver/browsetplcontext.go
---------
Co-authored-by: Matt Holt <mholt@users.noreply.github.com>
2024-02-06 04:31:26 +00:00
Marten Seemann
697cc593a1
chore: Update quic-go to v0.41.0, bump Go minimum to 1.21 ( #6043 )
...
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
Co-authored-by: Matt Holt <mholt@users.noreply.github.com>
2024-01-25 13:58:19 -05:00
Yolan Romailler
2fe69a828f
chore: enabling a few more linters ( #5961 )
...
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
2024-01-25 15:24:58 +00:00
Francis Lavoie
f5344f8cad
caddyhttp: Fix panic when request missing ClientIPVarKey ( #6040 )
2024-01-24 00:45:50 +00:00
Francis Lavoie
750d0b8331
caddyfile: Normalize & flatten all unmarshalers ( #6037 )
2024-01-23 19:36:59 -05:00
Mohammed Al Sahaf
54823f52bc
cmd: reverseproxy: log: use caddy logger ( #6042 )
2024-01-23 10:52:02 -07:00
Aziz Rmadi
ed7e3c906a
matchers: query
now ANDs multiple keys ( #6054 )
...
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
2024-01-22 02:36:44 +00:00
Francis Lavoie
5e2f1b5ced
httpcaddyfile: Rewrite root
and rewrite
parsing to allow omitting matcher ( #5844 )
2024-01-15 09:57:08 -07:00
Francis Lavoie
f3e849e49f
fileserver: Implement caddyfile.Unmarshaler interface ( #5850 )
2024-01-13 21:32:44 +00:00
Bas Westerbaan
f658fd05ac
reverseproxy: Add tls_curves
option to HTTP transport ( #5851 )
2024-01-13 20:56:23 +00:00
Nebez Briefkani
cc0c0cf03e
caddyhttp: Security enhancements for client IP parsing ( #5805 )
...
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
2024-01-13 20:46:37 +00:00
a
c839a98ff5
filesystem: Globally declared filesystems, fs
directive ( #5833 )
2024-01-13 20:12:43 +00:00
Fred Cox
d9ff7b1872
reverseproxy: Only change Content-Length when full request is buffered ( #5830 )
...
fixes: https://github.com/caddyserver/caddy/issues/5829
Signed-off-by: Fred Cox <mcfedr@gmail.com>
2024-01-09 12:59:30 -07:00
Mohammed Al Sahaf
787f6b257f
chore: check against errors of io/fs
instead of os
( #6011 )
...
* chore: replace `os.ErrNotExist` with `fs.ErrNotExist`
* check against permission error from `io/fs` package
2024-01-02 08:48:55 +03:00
networkException
b568a10dd4
caddyhttp: support unix sockets in caddy respond
command ( #6010 )
...
previously the `caddy respond` command would treat the argument
passed to --listen as a TCP socket address, iterating over a possible
port range.
this patch factors the server creation out into a separate function,
allowing this to be reused in case the listen address is a unix network
address.
2023-12-31 22:34:00 -05:00
Steffen Busch
8f9ffc587e
fileserver: Add total file size to directory listing ( #6003 )
...
* browse: Add total file size to directory listing
* Apply suggestion to remove "in "
Co-authored-by: Matt Holt <mholt@users.noreply.github.com>
---------
Co-authored-by: Matt Holt <mholt@users.noreply.github.com>
2023-12-30 18:47:13 +00:00
Francis Lavoie
3248e4c89f
logging: Add zap.Option
support ( #5944 )
2023-12-18 20:48:34 +00:00
Tim Geoghegan
387545a895
metrics: Record request metrics on HTTP errors ( #5979 )
2023-12-15 20:14:00 +00:00
Kévin Dunglas
b16aba5c27
fileserver: Enable compression for command by default ( #5855 )
...
* feat: enable compression for file-server
* refactor
* const
* Update help text
* Update modules/caddyhttp/fileserver/command.go
---------
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
Co-authored-by: Matt Holt <mholt@users.noreply.github.com>
2023-12-13 20:44:22 -07:00
David DeMoss
362f33daae
fileserver: New --precompressed flag ( #5880 )
...
exposes the file_server precompressed functionality to be used with the
file-server command
Co-authored-by: Matt Holt <mholt@users.noreply.github.com>
2023-12-13 20:26:20 -07:00
Francis Lavoie
3d7d60f7cf
caddyhttp: Add uuid
to access logs when used ( #5859 )
2023-12-13 15:40:15 -07:00
Mohammed Al Sahaf
dc12bd9743
proxyprotocol: use github.com/pires/go-proxyproto ( #5915 )
...
* proxyprotocol: use github.com/pires/go-proxyproto
* Fix typo: r/generelly/generally
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
* add config options for `Deny` CIDR and fallback policy
* use `netip` package & trust unix sockets
---------
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
2023-12-13 09:07:43 -07:00
Matt Holt
18f34290d2
templates: Offically make templates extensible ( #5939 )
...
* templates: Offically make templates extensible
This supercedes #4757 (and #4568 ) by making template extensions
configurable.
The previous implementation was never documented AFAIK and had only
1 consumer, which I'll notify as a courtesy.
* templates: Add 'maybe' function for optional components
* Try to fix lint error
2023-11-28 09:39:14 -07:00
WeidiDeng
22eecdb90c
http2 uses new round-robin scheduler ( #5946 )
2023-11-24 01:54:27 +00:00
WeidiDeng
4de2c1c65e
panic when reading from backend failed to propagate stream error ( #5952 )
2023-11-23 03:18:18 -05:00
WeidiDeng
96f638eaad
httpredirectlistener: Only set read limit for when request is HTTP ( #5917 )
2023-11-20 12:31:36 +00:00
Matthew Holt
7e52db8280
fileserver: Add .m4v for browse template icon
2023-11-14 13:39:57 -07:00
Mohammed Al Sahaf
3b3d678714
Revert "caddyhttp: Use sync.Pool to reduce lengthReader allocations ( #5848 )" ( #5924 )
2023-11-01 13:17:02 -04:00
Francis Lavoie
4c10a05431
caddyhttp: Adjust scheme
placeholder docs ( #5910 )
2023-10-22 17:47:16 -04:00
Francis Lavoie
4e8245df0b
templates: Delete headers on httpError
to reset to clean slate ( #5905 )
2023-10-18 16:43:14 -06:00
Harish Shan
c8559c4485
caddyhttp: Use sync.Pool to reduce lengthReader allocations ( #5848 )
...
* Use sync.Pool to reduce lengthReader allocations
Signed-off-by: Harish Shan <140232061+perhapsmaple@users.noreply.github.com>
* Add defer putLengthReader to prevent leak
Signed-off-by: Harish Shan <140232061+perhapsmaple@users.noreply.github.com>
* Cleanup in putLengthReader
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
---------
Signed-off-by: Harish Shan <140232061+perhapsmaple@users.noreply.github.com>
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
2023-10-16 14:42:01 -06:00
WeidiDeng
7c82e265da
core: quic listener will manage the underlying socket by itself ( #5749 )
...
* core: quic listener will manage the underlying socket by itself.
* format code
* rename sharedQUICTLSConfig to sharedQUICState, and it will now manage the number of active requests
* add comment
* strict unwrap type
* fix unwrap
* remove comment
2023-10-16 09:28:15 -06:00
Francis Lavoie
0900844c81
templates: Clarify include
args docs, add .ClientIP
( #5898 )
2023-10-15 20:58:46 -04:00
Forza
130f6d1f83
fileserver: Set canonical URL on browse template ( #5867 )
...
* Browse.html: Add canonical URL and home-link
When contents are equal, but maybe just a sort order is different, it is good to add `<link rel="canonical" href="base-path/" />`. This helps search engines propeely index the page.
I also added a link to the home page with the name of `{{.Host}}` just above the bread crumbs to make the page clearer.
https://paste.tnonline.net/files/28Wun5CQZiqA_Screenshot_20231007_134435_Opera.png
* Update browse.html
2023-10-11 13:47:38 -06:00
Matt Holt
3a3182fba3
reverseproxy: Add more debug logs ( #5793 )
...
* reverseproxy: Add more debug logs
This makes debug logging very noisy when reverse proxying, but I guess
that's the point.
This has shown to be useful in troubleshooting infrastructure issues.
* Update modules/caddyhttp/reverseproxy/streaming.go
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
* Update modules/caddyhttp/reverseproxy/streaming.go
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
* Add opt-in `trace_logs` option
* Rename to VerboseLogs
---------
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
2023-10-11 13:36:20 -06:00
Francis Lavoie
e8b8d4a8cd
reverseproxy: Fix least_conn
policy regression ( #5862 )
2023-10-11 16:04:28 +00:00
Francis Lavoie
a8586b05aa
reverseproxy: Add logging for dynamic A upstreams ( #5857 )
2023-10-11 09:50:44 -06:00
Francis Lavoie
05dbe1c171
reverseproxy: Replace health header placeholders ( #5861 )
2023-10-11 09:50:28 -06:00
Fred Cox
b245ecd325
reverseproxy: fix parsing Caddyfile fails for unlimited request/response buffers ( #5828 )
2023-10-11 04:42:40 -04:00
Francis Lavoie
2a6859a5e4
reverseproxy: Fix retries on "upstreams unavailable" error ( #5841 )
2023-10-10 22:07:20 +00:00
Christoph
e0aaefab80
encode: Add application/wasm*
to the default content types ( #5869 )
2023-10-10 21:18:37 +00:00
Kévin Dunglas
fa5a579b60
fileserver: Add command shortcuts -l
and -a
( #5854 )
2023-10-10 20:57:18 +00:00
Thanmay Nath
5653c36bc2
templates: Add dummy RemoteAddr
to httpInclude
request, proxy compatibility ( #5845 )
...
* Enhancement: Allow X-Forwarded-For Header in httpInclude Virtual Requests
The goal of this enhancement is to modify the funcHTTPInclude function in the Caddy codebase to include the X-Forwarded-For header in the virtual request. This change will enable reverse proxies to set the X-Forwarded-For header, ensuring that the client's IP address is correctly provided to the target endpoint. This modification is essential for applications that depend on the X-Forwarded-For header for various functionalities, such as authentication, logging, or content customization.
* Updated tplcontext.go - set `virtReq.RemoteAddr = "127.0.0.1"`
i have made the suggested changes
* Apply suggestions from code review
* Update modules/caddyhttp/templates/tplcontext.go
---------
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
2023-10-07 20:47:34 +00:00
Patrick Koenig
4feac4d83c
reverseproxy: Allow fallthrough for response handlers without routes ( #5780 )
2023-10-05 23:15:26 -04:00
Matthew Holt
58ab3a01a0
caddyhttp: Use LimitedReader for HTTPRedirectListener
2023-09-26 07:32:46 -06:00
glowinthedark
a306c5f769
fileserver: browse template SVG icons and UI tweaks ( #5812 )
...
* fileserver browse.html UI tweaks: folder-symlink icon, search
fileserver browse.html UI tweaks: folder-symlink icon, search
- ui - add folder-symlink SVG icon
- search: use `<input type="search">` instead of `text`
- fix npe with `sizebar.style.width` = null in grid mode
* tabify whitespace
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
---------
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
2023-09-15 19:05:45 -06:00
Pascal Vorwerk
1e0dea59ef
reverseproxy: fix nil pointer dereference in AUpstreams.GetUpstreams ( #5811 )
...
fix a nil pointer dereference in AUpstreams.GetUpstreams when AUpstreams.Versions is not set (fixes caddyserver#5809)
Signed-off-by: Pascal Vorwerk <info@fossores.de>
2023-09-10 19:08:02 -04:00
Matthew Holt
ed8bb13c5d
fileserver: Export BrowseTemplate
...
This allows programs embedding Caddy to customize the browse template.
2023-08-29 09:34:20 -06:00
Matt Holt
b377208ede
chore: Appease gosec linter ( #5777 )
...
These happen to be harmless memory aliasing
but I guess the linter can't know that and we
can't really prove it in general.
2023-08-23 20:47:54 -06:00
Karun Agarwal
288216e1fb
httpcaddyfile: Stricter errors for site and upstream address schemes ( #5757 )
...
Co-authored-by: Mohammed Al Sahaf <msaa1990@gmail.com>
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
2023-08-19 07:28:25 -04:00
Mohammed Al Sahaf
0a6d3333b2
fileserver: docs: clarify the ability to produce JSON array with browse
( #5751 )
2023-08-18 19:04:08 +00:00
Matt Holt
936ee918ee
reverseproxy: Always return new upstreams ( fix #5736 ) ( #5752 )
...
* reverseproxy: Always return new upstreams (fix #5736 )
* Fix healthcheck logger race
2023-08-17 11:33:40 -06:00
Jacob Gadikian
d6f86cccf5
ci: use gci linter ( #5708 )
...
* use gofmput to format code
* use gci to format imports
* reconfigure gci
* linter autofixes
* rearrange imports a little
* export GOOS=windows golangci-lint run ./... --fix
2023-08-14 09:41:15 -06:00
Matthew Holt
2d7d806fcf
fileserver: Slightly more fitting icons
2023-08-11 20:53:11 -06:00
Francis Lavoie
a8492c064d
fileserver: Don't repeat error for invalid method inside error context ( #5705 )
2023-08-09 17:12:09 +00:00
Matt Holt
6cdcc2a782
ci: Update to Go 1.21 ( #5719 )
...
* ci: Update to Go 1.21
* Bump quic-go to v0.37.4
* Check EnableFullDuplex err
* Linter bug suppression
See https://github.com/timakin/bodyclose/issues/52
---------
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
2023-08-09 12:34:28 -04:00
Jacob Gadikian
b32f265eca
ci: Use gofumpt to format code ( #5707 )
2023-08-07 19:40:31 +00:00
Matthew Holt
431adc0980
templates: Fix httpInclude ( fix #5698 )
...
Allowable during feature freeze because this is a simple, non-invasive
bug fix only.
2023-08-07 12:53:21 -06:00
Mohammed Al Sahaf
65e33fc1ee
reverseproxy: do not parse upstream address too early if it contains replaceble parts ( #5695 )
...
* reverseproxy: do not parse upstream address too early if it contains replaceble parts
* remove unused method
* cleanup
* accommodate partially replaceable port
2023-08-05 23:30:02 +02:00
Matthew Holt
c049bab458
fileserver: browse: Render SVG images in grid
2023-08-03 12:53:47 -06:00
WeidiDeng
e2fc08bd34
reverseproxy: Fix hijack ordering which broke websockets ( #5679 )
2023-08-03 04:08:12 +00:00
Francis Lavoie
1913930783
encode: Fix infinite recursion ( #5672 )
2023-08-02 18:21:11 -06:00
Francis Lavoie
cd486c25d1
caddyhttp: Make use of http.ResponseController
( #5654 )
...
* caddyhttp: Make use of http.ResponseController
Also syncs the reverseproxy implementation with stdlib's which now uses ResponseController as well 2449bbb5e6
* Enable full-duplex for HTTP/1.1
* Appease linter
* Add warning for builds with Go 1.20, so it's less surprising to users
* Improved godoc for EnableFullDuplex, copied text from stdlib
* Only wrap in encode if not already wrapped
2023-08-02 20:03:26 +00:00
mmm444
da23501457
reverseproxy: Connection termination cleanup ( #5663 )
2023-08-01 14:01:12 +00:00
Omar Ramadan
d7d16360d4
reverseproxy: Export ipVersions type ( #5648 )
...
allows AUpstreams to be instantiated externally
2023-07-25 12:50:21 -06:00
Matthew Holt
18c309b5fa
caddyhttp: Preserve original error ( fix #5652 )
2023-07-25 09:41:56 -06:00
ydylla
e041962b66
fileserver: add lazy image loading ( #5646 )
2023-07-22 15:50:36 +00:00
Marten Seemann
f45a6de20d
go.mod: Update quic-go to v0.37.0, bump to Go 1.20 minimum ( #5644 )
...
* update quic-go to v0.37.0
* Bump to Go 1.20
* Bump golangci-lint version, yml syntax consistency
* Use skip-pkg-cache workaround
* Workaround needed for both?
* Seeding weakrand is no longer necessary
---------
Co-authored-by: Matt Holt <mholt@users.noreply.github.com>
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
2023-07-21 22:00:48 -06:00
Matthew Holt
4e36b4c9d1
fileserver: Tweak grid view of browse template
...
All cells on row have same height.
Center-align vertically.
2023-07-17 11:18:40 -06:00
Mohammed Al Sahaf
27bc16abed
fileserver: add export-template
sub-command to file-server
( #5630 )
2023-07-13 15:54:48 -06:00
Matt Holt
0e2c7e1d35
caddytls: Reuse certificate cache through reloads ( #5623 )
...
* caddytls: Don't purge cert cache on config reload
* Update CertMagic
This actually avoids reloading managed certs from storage
when already in the cache, d'oh.
* Fix bug; re-implement HasCertificateForSubject
* Update go.mod: CertMagic tag
2023-07-11 19:10:58 +00:00
Matthew Holt
5dec11f2a0
reverseproxy: Pointer receiver
...
This avoids copying the Upstream, which has an atomically-accessed value
in it.
2023-07-08 13:42:51 -06:00
Matthew Holt
66114cb155
caddyhttp: Trim dot/space only on Windows ( fix #5613 )
...
Follow-up to #2917 . Path matcher needs to trim dots and spaces but only
on Windows.
2023-07-08 13:42:13 -06:00
Francis Lavoie
7a69ae7571
reverseproxy: Honor tls_except_port
for active health checks ( #5591 )
2023-06-22 16:20:30 -06:00
Saber Haj Rabiee
361946eb0c
reverseproxy: weighted_round_robin load balancing policy ( #5579 )
...
* added weighted round robin algorithm to load balancer
* added an adapt integration test for wrr and fixed a typo
* changed args format to Caddyfile args convention
* added provisioner and validator for wrr
* simplified the code and improved doc
2023-06-20 11:42:58 -06:00
mmm444
424ae0f420
reverseproxy: Experimental streaming timeouts ( #5567 )
...
* reverseproxy: WIP streaming timeouts
* More verbose logging by using the child logger
* reverseproxy: Implement streaming timeouts
* reverseproxy: Refactor cleanup
* reverseproxy: Avoid **time.Timer
---------
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
2023-06-19 15:54:43 -06:00
guangwu
4548b7de8e
chore: remove refs of deprecated io/ioutil ( #5576 )
2023-06-16 21:27:57 -06:00
Francis Lavoie
3b19aa2b5a
headers: Allow >
to defer shortcut for replacements ( #5574 )
2023-06-15 17:18:55 -06:00
Dominik Roos
6a41b62e70
caddyhttp: Support custom network for HTTP/3 ( #5573 )
...
Allow registering a custom network mapping for HTTP/3. This is useful
if the original network for HTTP/1.1 and HTTP/2 is not a standard `unix`,
`tcp4`, or `tcp6` network. To keep backwards compatibility, we fall back
to `udp` if the original network is not registered in the mapping.
Fixes #5555
2023-06-13 19:33:39 -06:00
Corin Langosch
2ddb717144
reverseproxy: Fix parsing of source IP in case it's an ipv6 address ( #5569 )
2023-06-12 09:35:22 -06:00
365cent
56af1ceb32
fileserver: browse: Better grid layout ( #5564 )
...
* feat: better implementation of grid layout
* fix: vertical alignment
2023-06-05 07:39:57 +00:00
kassienull
31d75acc9c
templates: Add readFile
action that does not evaluate templates ( #5553 )
...
* Create an includeRaw template function to include a file without parsing it as a template.
Some formatting fixes
* Rename to readFile, various docs adjustments
---------
Co-authored-by: Francis Lavoie <lavofr@gmail.com>
2023-05-26 10:16:28 -06:00
Matt Holt
5bd9c49042
fileserver: Don't set Etag if mtime is 0 or 1 ( close #5548 ) ( #5550 )
2023-05-22 14:17:15 -06:00
pistasjis
cdd3884b32
fileserver: browse: minor tweaks for grid view, dark mode ( #5545 )
...
* Make grid entries take up full width on mobile and fix breadcrumb color issue in dark mode
Signed-off-by: Pistasj <odyssey346@disroot.org>
* Do mholt's suggestions
Signed-off-by: Pistasj <odyssey346@disroot.org>
---------
Signed-off-by: Pistasj <odyssey346@disroot.org>
2023-05-20 17:23:17 -06:00
Charles Duffy
2615c9c524
fileserver: Only set Etag if not already set ( fix #5546 ) ( #5547 )
2023-05-20 17:21:43 -06:00
pistasjis
5336bc0fb6
fileserver: Fix file browser breadcrumb font ( #5543 )
...
Signed-off-by: Pistasj <odyssey346@disroot.org>
2023-05-19 11:08:47 -06:00
WeidiDeng
29452647d8
caddyhttp: Fix h3 shutdown ( #5541 )
...
* swap h3server close and listener close, avoid quic-listener not closing
* fix typo
2023-05-19 10:00:00 -06:00
Matthew Holt
bd34cb6b4e
fileserver: More filetypes for browse icons
2023-05-19 09:59:44 -06:00
pistasjis
2d236ead3e
fileserver: Fix file browser footer in grid mode ( #5536 )
...
* Fix file browser footer in grid
Signed-off-by: Odyssey <odyssey346@disroot.org>
* Fix file browser footer while in grid mode
Signed-off-by: Pistasj <odyssey346@disroot.org>
* Do mholt's suggestions
Signed-off-by: Odyssey <odyssey346@disroot.org>
---------
Signed-off-by: Odyssey <odyssey346@disroot.org>
Signed-off-by: Pistasj <odyssey346@disroot.org>
2023-05-19 09:51:21 -06:00
Francis Lavoie
cbf16f6d9e
caddyhttp: Implement named routes, invoke
directive ( #5107 )
...
* caddyhttp: Implement named routes, `invoke` directive
* gofmt
* Add experimental marker
* Adjust route compile comments
2023-05-16 15:27:52 +00:00
Tran Phong
13a37688dc
rewrite: use escaped path, fix #5278 ( #5504 )
...
* use escaped path while rewriting
Signed-off-by: TP-O <letranphong2k1@gmail.com>
* restore line break
---------
Signed-off-by: TP-O <letranphong2k1@gmail.com>
2023-05-16 09:16:07 -06:00
Francis Lavoie
e8352aef38
headers: Add > Caddyfile shortcut for enabling defer ( #5535 )
2023-05-16 01:18:13 -04:00
Francis Lavoie
75b690d248
reverseproxy: Expand port ranges to multiple upstreams in CLI + Caddyfile ( #5494 )
...
* reverseproxy: Expand port ranges to multiple upstreams in CLI + Caddyfile
* Add clarifying comment
2023-05-15 12:14:50 -06:00
Matt Holt
52d7335c2b
fileserver: Use EscapedPath for browse ( #5534 )
...
* fileserver: Use EscapedPath for browse
Fix #5143
* Fixes if filter element is not present
* Remove extraneous line
2023-05-15 10:48:05 -06:00
Matt Holt
96919acc9d
caddyhttp: Refactor cert Managers ( fix #5415 ) ( #5533 )
2023-05-15 10:47:30 -06:00
jjiang-stripe
cfc85ae8ca
caddyhttp: Add a getter for Server.name ( #5531 )
2023-05-11 10:34:05 -06:00
Francis Lavoie
b19946f6af
reverseproxy: Optimize base case for least_conn and random_choose policies ( #5487 )
...
When only a single request has the least amount of requests, there's no need to compute a random number, because the modulo of 1 will always be 0 anyways.
2023-05-05 20:53:48 -06:00