acme_shared_zone
The `acme_shared_zone` directive defines a shared memory zone for storing ACME challenge responses.
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.