2016-10-20 25 views
6

Bir nginx çalıştırıyorum. Şimdi benim nginx SSL kullanmak istiyorum:nginx için certbot-auto kullanarak

certbot-auto --nginx -d my.domain.com -n --agree-tos --email [email protected] 

ÇIKIŞ:

Performing the following challenges: 
tls-sni-01 challenge for my.domain.com 
Cleaning up challenges 
Cannot find a VirtualHost matching domain my.domain.com. 

my.domain.com Sunucumun IP'ye işaret ediyor. Bu onun dns adı. Neyi yanlış yapıyorum? Bunu apache için yaptım ve gayet iyi çalışıyordu. Benim nginx çalışıyor (ve ben certbot-auto sonra elle yeniden başlatmak mümkün değil ama bu kullandığımda bu gerekli değildi certbot-auto --apache

+0

hata nginx yapılandırma ifade eder: nginx,

$ sudo ln -s /etc/nginx/sites-available/my.domain.com /etc/nginx/sites-enabled/ 

sitenizi ekleyin yapılandırma hatalarını kontrol ve yeniden başlatın: onlar siteler etkin klasörde mevcut değilse, onlar için sembolik bağlantılar oluşturmak değil, DNS/IP vb. çözülecek olan nginx yapılandırma ayrıştırıcılarıyla birlikte [sorunlar] (https://github.com/certbot/certbot/issues/3798) vardı. –

+0

Nginx siteleri etkin yapılandırmanızı gönderir misiniz? Linux Ubuntu sunucusu kullanıyorsanız ->/etc/nginx/site-etkin/varsayılan –

cevap

7

Benim durumumda, "server_name" satırı eklemek zorunda kaldım çünkü koştum zaman bana hata iletisi veriyordu yani benim nginx config "bir Sanal Ana eşleşen alanı my.domain.com bulunamıyor":

server { 
    server_name my.domain.com; 
    .... 
} 
1
:

certbot --nginx 

Bu yapılandırma içinde olduğundan emin olun

Muhtemelen bazı Sunucu Blokları (sanal konaklar) eksik Siteler etkin klasördeki dosyaları. Yapılandırma dosyalarınızın /etc/nginx/sites-availableve/etc/nginx/sites-enabled'da olup olmadığını kontrol edin.

$ sudo certbot --nginx -d my.domain.com 
$ sudo nginx -t 
$ sudo service nginx restart