1. The problem I’m having:
Caddy is not serving static files over https, theyre avaliable locally, curl detects them, but its not visible outside, it is not a firewall issue as the ports are open and i have tried disabling it, it does not seem like a network problem since i was hosting perfectly fine with nodejs earlier.
2. Error messages and/or full log output:
Mar 22 19:08:09 localhost caddy[1211611]: caddy.HomeDir=/var/lib/caddy
Mar 22 19:08:09 localhost caddy[1211611]: caddy.AppDataDir=/var/lib/caddy/.local/share/caddy
Mar 22 19:08:09 localhost caddy[1211611]: caddy.AppConfigDir=/var/lib/caddy/.config/caddy
Mar 22 19:08:09 localhost caddy[1211611]: caddy.ConfigAutosavePath=/var/lib/caddy/.config/caddy/autosave.json
Mar 22 19:08:09 localhost caddy[1211611]: caddy.Version=2.6.2
Mar 22 19:08:09 localhost caddy[1211611]: runtime.GOOS=linux
Mar 22 19:08:09 localhost caddy[1211611]: runtime.GOARCH=amd64
Mar 22 19:08:09 localhost caddy[1211611]: runtime.Compiler=gc
Mar 22 19:08:09 localhost caddy[1211611]: runtime.NumCPU=1
Mar 22 19:08:09 localhost caddy[1211611]: runtime.GOMAXPROCS=1
Mar 22 19:08:09 localhost caddy[1211611]: runtime.Version=go1.19.8
Mar 22 19:08:09 localhost caddy[1211611]: os.Getwd=/
Mar 22 19:08:09 localhost caddy[1211611]: LANG=en_US.UTF-8
Mar 22 19:08:09 localhost caddy[1211611]: PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Mar 22 19:08:09 localhost caddy[1211611]: NOTIFY_SOCKET=/run/systemd/notify
Mar 22 19:08:09 localhost caddy[1211611]: HOME=/var/lib/caddy
Mar 22 19:08:09 localhost caddy[1211611]: LOGNAME=caddy
Mar 22 19:08:09 localhost caddy[1211611]: USER=caddy
Mar 22 19:08:09 localhost caddy[1211611]: INVOCATION_ID=df772ce7196a46e1a4f0bbd780a2a61f
Mar 22 19:08:09 localhost caddy[1211611]: JOURNAL_STREAM=8:16482715
Mar 22 19:08:09 localhost caddy[1211611]: SYSTEMD_EXEC_PID=1211611
Mar 22 19:08:09 localhost caddy[1211611]: XDG_CONFIG_HOME=/var/lib/caddy/.config
Mar 22 19:08:09 localhost caddy[1211611]: XDG_DATA_HOME=/var/lib/caddy/.local/share
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.3569345,"msg":"using provided configuration","config_file":"/etc/caddy/Caddyfile","config_adapter":""}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"warn","ts":1742670489.3578742,"msg":"Caddyfile input is not formatted; run the 'caddy fmt' command to fix inconsistencies","adapter":"caddyfile","file":"/etc/caddy/Caddyfile","line":2}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.3666363,"logger":"admin","msg":"admin endpoint started","address":"localhost:2019","enforce_origin":false,"origins":["//localhost:2019","//[::1]:2019","//127.0.0.1:2019"]}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.3670845,"logger":"http","msg":"server is listening only on the HTTPS port but has no TLS connection policies; adding one to enable TLS","server_name":"srv0","https_port":443}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.3671584,"logger":"http","msg":"enabling automatic HTTP->HTTPS redirects","server_name":"srv0"}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.367848,"logger":"http","msg":"enabling HTTP/3 listener","addr":":443"}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.3682754,"msg":"failed to sufficiently increase receive buffer size (was: 208 kiB, wanted: 2048 kiB, got: 416 kiB). See https://github.com/lucas-clemente/quic-go/wiki/UDP-Receive-Buffer-Size for details."}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.3700757,"logger":"tls.cache.maintenance","msg":"started background certificate maintenance","cache":"0xc0004fbf10"}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.3701055,"logger":"tls","msg":"cleaning storage unit","description":"FileStorage:/var/lib/caddy/.local/share/caddy"}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.371915,"logger":"tls","msg":"finished cleaning storage units"}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.3719552,"logger":"http.log","msg":"server running","name":"srv0","protocols":["h1","h2","h3"]}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.3719833,"logger":"http.log","msg":"server running","name":"remaining_auto_https_redirects","protocols":["h1","h2","h3"]}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.3719878,"logger":"http","msg":"enabling automatic TLS certificate management","domains":["marcothepucci.dev"]}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.3734896,"msg":"autosaved config (load with --resume flag)","file":"/var/lib/caddy/.config/caddy/autosave.json"}
Mar 22 19:08:09 localhost caddy[1211611]: {"level":"info","ts":1742670489.3735209,"msg":"serving initial configuration"}
3. Caddy version:
2.6.2
4. How I installed and ran Caddy:
Installed using APT, followed the Getting Started
a. System environment:
Debian GNU/Linux 12, kernel 6.1.0 x86
b. Command:
sudo systemctl start caddy.service
c. Service/unit/compose file:
[Unit]
Description=Caddy
Documentation=https://caddyserver.com/docs/
After=network.target network-online.target
Requires=network-online.target
[Service]
Type=notify
User=caddy
Group=caddy
ExecStart=/usr/bin/caddy run --environ --config /etc/caddy/Caddyfile
ExecReload=/usr/bin/caddy reload --config /etc/caddy/Caddyfile
TimeoutStopSec=5s
LimitNOFILE=1048576
LimitNPROC=512
PrivateTmp=true
ProtectHome=false
ProtectSystem=full
AmbientCapabilities=CAP_NET_BIND_SERVICE
Environment=XDG_CONFIG_HOME=/var/lib/caddy/.config
Environment=XDG_DATA_HOME=/var/lib/caddy/.local/share
[Install]
WantedBy=multi-user.target
d. My complete Caddy config:
marcothepucci.dev {
root * /var/www/marcothepucci-dev
file_server
}