+```
+
+An empty `file` matcher (one with no files listed after it) will see if the requested file—verbatim from the URI, relative to the [site root](/docs/caddyfile/directives/root)—exists.
Since rewriting based on the existence of a file on disk is so common, there is also a [`try_files` directive](/docs/caddyfile/directives/try_files) which is a shortcut of the `file` matcher and a [`rewrite` handler](/docs/caddyfile/directives/rewrite).
diff --git a/src/docs/markdown/command-line.md b/src/docs/markdown/command-line.md
index a932f8c..ed7bacd 100644
--- a/src/docs/markdown/command-line.md
+++ b/src/docs/markdown/command-line.md
@@ -172,13 +172,13 @@ Formats or prettifies a Caddyfile, then exits. The result is printed to stdout u
### `caddy hash-password`
caddy hash-password
- --plaintext <password>
+ [--plaintext <password>]
[--algorithm <name>]
[--salt <string>]
Hashes a password and writes the output to stdout in base64 encoding, then exits.
-`--plaintext` is the plaintext form of the password.
+`--plaintext` is the plaintext form of the password. If omitted, interactive mode will be assumed and the user will be shown a prompt to enter the password manually.
`--algorithm` may be bcrypt or scrypt. Default is bcrypt.
@@ -250,6 +250,7 @@ This command disables the admin API so it is easier to run multiple instances on
caddy run
[--config <path>]
[--adapter <name>]
+ [--pidfile <file>]
[--environ]
[--resume]
[--watch]
@@ -260,6 +261,8 @@ Runs Caddy and blocks indefinitely; i.e. "daemon" mode.
`--adapter` is the name of the config adapter to use when loading the initial config, if any. This flag is not necessary if the `--config` filename starts with "Caddyfile" which assumes the `caddyfile` adapter. Otherwise, this flag is required if the provided config file is not in Caddy's native JSON format. Any warnings will be printed to the log, but beware that any adaptation without errors will immediately be used, even if there are warnings. If you want to review the results of the adaptation first, use the [`caddy adapt`](#caddy-adapt) subcommand.
+`--pidfile` writes the PID to the specified file.
+
`--environ` prints out the environment before starting. This is the same as the `caddy environ` command, but does not exit after printing.
`--resume` uses the last loaded configuration, overriding the `--config` flag (if present) if a previous config was saved. Using this flag guarantees config durability through machine reboots or process restarts. It is most useful in [API](/docs/api)-heavy deployments.
@@ -277,6 +280,7 @@ Runs Caddy and blocks indefinitely; i.e. "daemon" mode.
caddy start
[--config <path>]
[--adapter <name>]
+ [--pidfile <file>]
[--watch]
Same as [`caddy run`](#caddy-run), but in the background. This command only blocks until the background process is running successfully (or fails to run), then returns.
diff --git a/src/docs/markdown/conventions.md b/src/docs/markdown/conventions.md
index cf1d915..400d27d 100644
--- a/src/docs/markdown/conventions.md
+++ b/src/docs/markdown/conventions.md
@@ -141,7 +141,7 @@ It is crucial that this directory is persistent and writeable by Caddy.
## Durations
-Duration strings are commonly used throughout Caddy's configuration. They take on the same format as [Go's time.ParseDuration syntax](https://golang.org/pkg/time/#ParseDuration). Valid units are:
+Duration strings are commonly used throughout Caddy's configuration. They take on the same format as [Go's time.ParseDuration syntax](https://golang.org/pkg/time/#ParseDuration) except you can also use `d` for day (we assume 1 day = 24 hours for simplicity). Valid units are:
- `ns` (nanosecond)
- `us`/`µs` (microsecond)
@@ -149,6 +149,7 @@ Duration strings are commonly used throughout Caddy's configuration. They take o
- `s` (second)
- `m` (minute)
- `h` (hour)
+- `d` (day)
Examples:
@@ -156,5 +157,6 @@ Examples:
- `5s`
- `1.5h`
- `2h45m`
+- `90d`
In the [JSON config](/docs/json/), duration values can also be integers which represent nanoseconds.
\ No newline at end of file