acme_shared_zone

The `acme_shared_zone` directive defines a shared memory zone for storing ACME challenge responses.

Syntaxacme_shared_zone name size;
Defaultnone
Contexthttp
Arguments1

Description

The acme_shared_zone directive is used in the context of the http block in NGINX configurations to establish a shared memory zone for use by the Automatic Certificate Management Environment (ACME) protocol. This directive is essential for maintaining state across multiple worker processes, ensuring that ACME challenge responses can be accessed consistently from different NGINX workers. This feature is crucial when handling challenges for SSL certificate requests, allowing for scalable and efficient management of certificate renewals and verifications.

The parameter for this directive specifies the name of the shared memory zone and its size. The name is used as a key to identify the zone, while the size determines how much memory is allocated for storing the ACME state information. It's important to choose an appropriate size based on the expected number of concurrent requests and the size of the challenge responses. If the allocated memory zone is too small, it may lead to failures in processing challenges, especially under high load.

By configuring this directive correctly, users can benefit from a robust ACME implementation that seamlessly handles HTTP-01 challenges and integrates well within the NGINX architecture. The directive functions in conjunction with other ACME-related directives to fulfill the requirements of the ACMEv2 protocol and cater to automated SSL certificate management workflows.

Config Example

http {
    acme_shared_zone acme_zone 10m;
}

Ensure the shared zone size is adequate; a too-small size can lead to failures in processing ACME challenges.

The shared zone must be defined in the http context, not in server or location contexts.

If not used correctly, it may lead to unexpected behaviors or failures in certificate issuance.

← Back to all directives