原文链接 https://bysocket.com/nginx-unexpected-end-of-file-expecting-in-key-file/

一、Nginx unexpected end of file 问题

通过 letsencrypt 申请证书后,默认服务器安装了 Nginx 1.8 发现,在默认的 /etc/nginx/sites-enabled/default 内容配置 SSL 的 site.com.key 后。重启 Nginx 出现一下错误:

nginx: [emerg] unexpected end of file, expecting ";" or "}" in /etc/nginx/sites-enabled/site.com.key:27

二、定位和解决

上述通过日志发现了这个问题,日常谷歌下,发现都不是在这个问题。普遍的是 conf 文件,少了 ";" or "}" 结尾。我这个提示最关键的是说 SSL key 文件里面存在这个问题,其实 SSL 生成文件没错。

后来发现,原来是默认 nginx 的问题。

解决方法:

将 /etc/nginx/sites-enabled/default 里面配置 server 迁移到主配置文件 /etc/nginx/nginx.conf

原因:

默认 nginx 有如下配置:

但默认 server 相关文件内写入 SSL 相关信息会上述的错误

出处:公号「程序员泥瓦匠」
博客: https://bysocket.com/

内容涵盖 Java 后端技术、Spring Boot、Spring Cloud、微服务架构、运维开发、系统监控等相关的研究与知识分享。

发表回复