2016-10-20 4 views
6

У меня работает nginx. Теперь я хочу, чтобы мой Nginx использовать SSL:используя certbot-auto для nginx

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

ВЫВОД:

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 указывает на IP моего сервера. Это его имя DNS. Что я делаю неправильно? Я сделал это уже для апача, и он работал нормально. Мой nginx работает (и я не могу перезапустить его вручную после certbot-auto, но это не было необходимо, когда я использовал certbot-auto --apache

+0

Ошибка относится к вашей Nginx конфигурации , а не DNS/IP и т. д. Были проблемы [https://github.com/certbot/certbot/issues/3798) с парсерами конфигурации nginx, которые должны быть решены. –

+0

Можете ли вы опубликовать конфигурацию с поддержкой nginx-сайтов? должен быть расположен здесь, если вы используете сервер Linux Ubuntu ->/etc/nginx/sites-enabled/default –

ответ

7

В моем случае мне пришлось добавить строку «имя_сервера», потому что это не было в моем Nginx конфигурации, так что дает мне сообщение об ошибке «не удается найти VirtualHost соответствующий домен my.domain.com», когда я побежал:

certbot --nginx 

Убедитесь, что это в вашей конфигурации:

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

Возможно, вам не хватает некоторых серверных блоков (виртуальных хостов) файлов в папке с поддержкой сайтов. Проверьте, существуют ли ваши файлы конфигурации в /etc/nginx/sites-availableи/etc/nginx/sites-enabled. Если они не присутствуют в папке сайтов с поддержкой, создать символические ссылки на них:

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

Добавьте свой сайт, проверить на наличие ошибок конфигурации и перезапустить Nginx:

$ sudo certbot --nginx -d my.domain.com 
$ sudo nginx -t 
$ sudo service nginx restart 
Смежные вопросы