Parece que você está perdendo um ponto-e-vírgula no final da diretiva server_name. Eu suspeito que isso está causando a seguinte linha a ser interpretada como parte da diretiva server_name em vez de como uma nova diretiva.
Eu criei com sucesso algumas certificações LE SSL, usando este guia .
No entanto, quando atualizei minha configuração nginx para usar os certs e redirecionar todo o tráfego da porta 80 para 443. http redireciona com êxito para https, o site não carrega. O navegador detecta que tenho um certificado válido, mas diz que não tenho uma conexão segura. Isso é o que eu tenho no meu /var/log/nginx/error.log
:
2016/03/08 00:11:49 [error] 7301#0: *14 no "ssl_certificate" is defined in server listening on SSL port while SSL handshaking, client: 55.555.55.555, server: 0.0.0.0:443
O erro diz que não tenho nenhum certificado SSL definido, apesar do fato de que eu faço. Esta é minha configuração:
server {
listen 443 ssl;
server_name cooldomain.pizza www.cooldomain.pizza
ssl_certificate /etc/letsencrypt/live/cooldomain.pizza/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/cooldomain.pizza/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
root /home/ubuntu/www/cooldomain-pizza;
index index.php index.html index.htm;
server_name cooldomain.pizza www.cooldomain.pizza;
charset utf-8;
location / {
try_files $uri $uri/ =404;
# Uncomment to enable naxsi on this location
# include /etc/nginx/naxsi.rules
}
location ~ \.php$ {
try_files $uri $uri/ =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Estou executando o Ubuntu 14.04 com o Nginx 1.4.6.
Alguma ideia do que está acontecendo? Eu tive que reverter a versão SSL do site e voltar a ser apenas a porta 80.
Eu tive o mesmo problema. Isso me ajudou a colocar
default_server
na diretiva de escuta.