MarketCaddy (web server)
Company Profile

Caddy (web server)

Caddy is an extensible, cross-platform, open-source web server written in Go.

Architecture
Caddy is organized into three main components: a command, the core library, and configuration modules. The command is the extensible interface by which the program is executed; it can also load configuration files, run common modes, manage installed plugins, and offer relevant utility functions. The core library has APIs for loading, unloading, and managing configuration; but it does nothing particularly useful on its own. Most of Caddy's functionality is provided by modules, which are plugins that extend Caddy's configuration structure; for example, the HTTP server is a module. Caddy modules implement various long-running services, web standards, and other useful features. Caddy's input is a JSON configuration document which is received through an open socket via a RESTful HTTP API. Config adapters may be used to convert other configuration formats to JSON. Existing adapters include the Caddyfile, which has first-class support in the command line; and YAML, TOML, Nginx, and several other formats. All these modules are provisioned during the config load phase. using the xcaddy command line tool, or by manually compiling a custom build. == HTTP server ==
HTTP server
The HTTP server is an app module that comes standard with official Caddy distributions. and load-balancing reverse proxy. While the basis of Caddy's HTTP features use the implementation found in Go's standard library, a variety enhancements and customizations are available as middleware and exposed through configuration parameters: These are assumed to be site names or IP addresses that Caddy is serving, so Caddy will automatically procure and renew certificates for the configured hostnames and IP addresses. When automatic HTTPS is activated in this manner, Caddy will also redirect HTTP requests to their equivalent HTTPS location. To automatically acquire the TLS certificates, Caddy implements the Automatic Certificate Management Environment protocol, allowing it to communicate with services like Let's Encrypt. ==Development==
Development
The first git commit in the Caddy project was in 2014. At that point, the project had over 250 contributors. , 0.2% of the sites scanned by W3Techs used Caddy. ==Derivatives==
Derivatives
CoreDNS, a project of the Cloud Native Computing Foundation. ==See also==
tickerdossier.comtickerdossier.substack.com