Nginx unexpected end of file 配置證書遇到問題,如何解決?

程式設計師泥瓦匠發表於2023-02-05

原文連結 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 有如下配置:

  • 主配置檔案 /etc/nginx/nginx.conf
  • include 了預設 server 內容檔案 /etc/nginx/sites-enabled/default

但預設 server 相關檔案內寫入 SSL 相關資訊會上述的錯誤

相關文章