bind
Переопределяет интерфейс, к которому должен быть привязан сокет сервера.
Обычно слушатель привязывается к пустому (универсальному) интерфейсу. Однако вы можете принудительно привязать его к другому имени хоста или IP-адресу. Данная директива принимает только хост, а не порт. Порт определяется адресом сайта сайта (по умолчанию 443).
Обратите внимание, что несовместимая привязка сайтов может привести к непредвиденным последствиям. Например, если два сайта на одном порту разрешаются до 127.0.0.1, и только один из этих сайтов настроен с bind 127.0.0.1, то только один сайт будет доступен, так как другой будет привязан к порту без указанного хоста; ОС выберет сокет с более конкретным соответствием. (Виртуальные хосты не разделяются между различными слушателями.)
bind принимает сетевые адреса, но не может содержать порт.
Синтаксис
bind <hosts...>
- <hosts...> — список интерфейсов хоста, к которым должен быть привязан слушатель.
Примеры
Чтобы сделать сокет доступным только на текущем компьютере, привяжите его к интерфейсу обратной связи (localhost):
example.com {
bind 127.0.0.1
}
Чтобы включить IPv6:
example.com {
bind 127.0.0.1 [::1]
}
Чтобы привязаться к 10.0.0.1:8080:
example.com:8080 {
bind 10.0.0.1
}
Чтобы привязаться к сокету доменной Unix-системы по адресу /run/caddy:
example.com {
bind unix//run/caddy
}
Чтобы изменить права файла на запись для всех пользователей (по умолчанию 0200, который разрешен только владельцу):
example.com {
bind unix//run/caddy|0222
}
Чтобы привязать один домен к двум различным интерфейсам с разными ответами:
example.com {
bind 10.0.0.1
respond "One"
}
example.com {
bind 10.0.0.2
respond "Two"
}
© 2015-2025 Matthew Holt and The Caddy Authors
Licensed under the Apache License 2.0.
Caddy is a registered trademark of Stack Holdings GmbH.
https://caddyserver.com/docs/caddyfile/directives/bind