Jawaban:
Anda tidak dapat menggunakan variabel di setiap arahan. ssl_certificate
diperlakukan sebagai string literal dan merupakan salah satu dari banyak arahan di mana variabel tidak didukung.
Untuk menentukan sertifikat yang berbeda untuk host, Anda harus menulisnya secara eksplisit di blok server:
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;
# ...
}
# ...
Jika Anda merasa tidak nyaman menduplikasi konfigurasi, buat templat dan hasilkan konfigurasi nginx menggunakan templat tersebut. Lihat juga http://nginx.org/en/docs/faq/variables_in_config.html .
Anda dapat menggunakan variabel sejak nginx 1.15.9 (26 Feb 2019)
Perhatikan bahwa menggunakan variabel menyiratkan bahwa sertifikat akan dimuat untuk setiap jabat tangan SSL, dan ini mungkin berdampak negatif pada kinerja
Namun waspadai Perubahan dengan nginx 1.15.12 (16 Apr 2019):
Perbaikan bug: kesalahan segmentasi dapat terjadi dalam proses pekerja jika variabel digunakan dalam arahan "ssl_certificate" atau "ssl_certificate_key" dan stapel OCSP diaktifkan.
ssl_certificate
danssl_certificate_key
ditambahkan hari ini! nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_certificate