nginx, ssl_certificate yolunda $ server_name öğesini kullandı


33

Değişken adını dosya yolunda nasıl kullanabilirim?

ssl_certificate /home/ec2-user/.certificados/$server_name.crt;
ssl_certificate_key /home/ec2-user/.certificados/$server_name.key;

Yanıtlar:


37

Değişkenleri her direktifte kullanamazsınız. ssl_certificatedeğişmez bir dize olarak değerlendirilir ve değişkenlerin desteklenmediği birçok yönergeden biridir.

Ana bilgisayarlar için farklı sertifikalar belirlemek üzere, açıkça bir sunucu bloğuna yazmanız gerekir:

server {
    server_name example.com;
    ssl_certificate /home/ec2-user/.certificados/example.com.crt;
    ssl_certificate_key /home/ec2-user/.certificados/example.com.key;
    # ...
}
server {
    server_name example.net;
    ssl_certificate /home/ec2-user/.certificados/example.net.crt;
    ssl_certificate_key /home/ec2-user/.certificados/example.net.key;
    # ...
}
# ...

Yapılandırmayı kopyalamaktan rahatsızsanız, şablon oluşturun ve bu şablonları kullanarak nginx yapılandırmasını oluşturun. Ayrıca bkz . Http://nginx.org/en/docs/faq/variables_in_config.html .


6
değişkenleri için destek ssl_certificateve ssl_certificate_keybugün eklendi! nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_certificate
Andrew Brown

6

Değişkenleri nginx 1.15.9'dan beri kullanabilirsiniz (26 Şub 2019)

Değişkenleri kullanmanın, her SSL el sıkışması için bir sertifikanın yükleneceğini ima ettiğini ve bunun performans üzerinde olumsuz bir etkisi olabileceğini unutmayın.

Ancak nginx 1.15.12 (16 Nis 2019) ile yapılan değişikliklerden haberdar olun :

Hata düzeltmesi: "ssl_certificate" veya "ssl_certificate_key" direktiflerinde değişkenler kullanılmışsa ve OCSP zımbalama etkinleştirildiyse, bir işçi işleminde segmentasyon hatası oluşabilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.