nginx ssl_certificate पथ पर $ server_name का उपयोग करता है


33

मैं फ़ाइल पथ में एक चर नाम का उपयोग कैसे कर सकता हूं?

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

जवाबों:


37

आप प्रत्येक निर्देश में चर का उपयोग नहीं कर सकते। ssl_certificateएक शाब्दिक स्ट्रिंग के रूप में माना जाता है और कई निर्देशों में से एक है जहां चर असमर्थित हैं।

मेजबानों के लिए विभिन्न प्रमाणपत्रों को निर्दिष्ट करने के लिए, आपको इसे स्पष्ट रूप से सर्वर ब्लॉक में लिखना होगा:

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;
    # ...
}
# ...

यदि आप कॉन्फ़िगरेशन को डुप्लिकेट करने में असहज महसूस करते हैं, तो टेम्प्लेट बनाएं और उन टेम्प्लेट का उपयोग करके नेग्नेक्स कॉन्फ़िगरेशन बनाएं। Http://nginx.org/en/docs/faq/variables_in_config.html भी देखें ।


6
में चर के लिए समर्थन ssl_certificateऔर ssl_certificate_keyआज जोड़ा गया था! nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_cert सर्टिफिकेट
एंड्रयू ब्राउन

6

आप नगण्य 1.15.9 (26 फरवरी 2019) के बाद से चर का उपयोग कर सकते हैं

ध्यान दें कि चर का उपयोग करने से तात्पर्य है कि प्रत्येक SSL हैंडशेक के लिए एक प्रमाण पत्र लोड किया जाएगा, और इससे प्रदर्शन पर नकारात्मक प्रभाव पड़ सकता है

लेकिन 1.15.12 nginx के साथ परिवर्तन के बारे में पता होना (16 अप्रैल 2019) :

बगिफ़िक्स: एक विभाजन प्रक्रिया में एक कार्यकर्ता प्रक्रिया हो सकती है यदि चर का उपयोग "ssl_certificate" या "ssl_certificate_key" निर्देशों में किया गया था और OCSP स्टेपलिंग सक्षम किया गया था।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.