mirror of
https://github.com/alecthomas/chroma.git
synced 2025-02-05 13:05:18 +02:00
381050ba00
* Major updates to Caddyfile lexer * yaml editorconfig * nolint false positive
143 lines
2.3 KiB
Plaintext
143 lines
2.3 KiB
Plaintext
{
|
|
debug
|
|
admin off
|
|
on_demand_tls {
|
|
ask https://example.com
|
|
}
|
|
log default {
|
|
output file /var/log/caddy/access.log
|
|
format json
|
|
}
|
|
auto_https disable_redirects
|
|
renew_interval 20m
|
|
|
|
# this is a comment
|
|
servers 192.168.1.2:8080 {
|
|
name public
|
|
trusted_proxies static private_ranges
|
|
log_credentials
|
|
}
|
|
}
|
|
|
|
# top level comment
|
|
|
|
(blocking) {
|
|
@blocked {
|
|
path *.txt *.md *.mdown /site/*
|
|
}
|
|
redir @blocked /
|
|
}
|
|
|
|
http://example.com {
|
|
respond "http"
|
|
}
|
|
|
|
example.com, fake.org, {$ENV_SITE} {
|
|
root * /srv
|
|
|
|
respond /get-env {$ENV_VAR}
|
|
respond /get-env {$ENV_VAR:default}
|
|
|
|
tls internal
|
|
tls /path/to/cert.pem /path/to/key.pem
|
|
|
|
route {
|
|
# Add trailing slash for directory requests
|
|
@canonicalPath {
|
|
file {
|
|
try_files {path}/index.php
|
|
}
|
|
not path */
|
|
}
|
|
redir @canonicalPath {path}/ 308
|
|
|
|
# If the requested file does not exist, try index files
|
|
@indexFiles {
|
|
file {
|
|
try_files {path} {path}/index.php index.php
|
|
split_path .php
|
|
}
|
|
}
|
|
rewrite @indexFiles {http.matchers.file.relative}
|
|
|
|
# Proxy PHP files to the FastCGI responder
|
|
@phpFiles {
|
|
path *.php
|
|
}
|
|
reverse_proxy @phpFiles unix//var/run/php7.4-fpm.sock {
|
|
transport fastcgi {
|
|
split .php
|
|
}
|
|
}
|
|
}
|
|
|
|
@encode_exts {
|
|
path / *.html *.js *.css *.svg
|
|
}
|
|
|
|
header {
|
|
X-Content-Type-Options nosniff
|
|
X-XSS-Protection "1; mode=block"
|
|
X-Robots-Tag none
|
|
Content-Security-Policy "frame-ancestors 'self'"
|
|
X-Frame-Options DENY
|
|
Referrer-Policy same-origin
|
|
}
|
|
|
|
@singleLine not path /matcher
|
|
respond @singleLine "Awesome."
|
|
|
|
import blocking
|
|
import blocking foo
|
|
import glob/*
|
|
|
|
file_server
|
|
|
|
@named host example.com
|
|
handle @named {
|
|
handle /foo* {
|
|
handle /foo* {
|
|
respond "{path} foo"
|
|
}
|
|
}
|
|
respond "foo"
|
|
}
|
|
|
|
handle_path /foo* {
|
|
respond "foo"
|
|
}
|
|
|
|
reverse_proxy /api/* unix//var/run/api.sock {
|
|
@good status 200
|
|
handle_response @good {
|
|
rewrite * /foo{uri}
|
|
file_server
|
|
}
|
|
}
|
|
|
|
respond <<HTML
|
|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title>Test</title>
|
|
</head>
|
|
<body>
|
|
<h1>Hello, world!</h1>
|
|
</body>
|
|
</html>
|
|
HTML 200
|
|
|
|
@file `file()`
|
|
@first `file({'try_files': [{path}, {path} + '/', 'index.html']})`
|
|
@smallest `file({'try_policy': 'smallest_size', 'try_files': ['a.txt', 'b.txt']})`
|
|
|
|
@without-both {
|
|
not {
|
|
path /api/*
|
|
method POST
|
|
}
|
|
}
|
|
|
|
path_regexp [<name>] <regexp>
|
|
}
|