sxg_certificate
`sxg_certificate` 指令指定用于生成签名 HTTP 交换 (SXGs) 的证书文件路径。
Signed HTTP Exchange(SXG) support for NGINX
·
server
语法sxg_certificate path;
默认值none
上下文server
参数1
说明
sxg_certificate 指令对于在 NGINX 中启用 Signed HTTP Exchange (SXG) 支持至关重要。该指令应放在 server 块内,并且需要指向证书文件的有效完整路径。证书必须包含 CanSignHttpExchanges 扩展(表明其签署 HTTP 交换的能力),并且必须使用 ECDSA256 或 ECDSA384 加密算法。该指令与 sxg_certificate_key、sxg_cert_url 和 sxg_validity_url 等其他指令一道,对于 NGINX 根据包含 Accept: application/signed-exchange;v=b3 请求头的入站请求正确生成 SXG 响应是必需的。
正确配置后,NGINX 会使用 sxg_certificate 指定的证书对交换的有效载荷进行签名,以确保证书的有效性和完整性。此过程涉及使用由 sxg_certificate_key 指令定义的私钥,使 NGINX 能够创建与 SXG 响应相关联的加密签名。指定的文件必须可被 NGINX 服务器进程访问,并满足用于签署 SXG 的安全要求,从而确保生成的签名交换可以被客户端信任并符合 Web 标准。
配置示例
server {
listen 80;
server_name example.com;
sxg_certificate /path/to/certificate.pem;
sxg_certificate_key /path/to/private.key;
sxg_cert_url https://example.com/cert.cbor;
sxg_validity_url https://example.com/validity.json;
}⚠
确保证书文件具有 CanSignHttpExchanges 扩展;否则,SXG 生成将失败。
⚠
证书文件和私钥必须匹配;不匹配的密钥会导致签名错误。
⚠
指定的路径必须可被 NGINX 用户访问,否则会导致权限错误。