去年搭建的gitlab,使用了阿里雲的免費ssl證書來配置https,證書一年有效。前幾天過期后無法訪問了。
申請了新的證書,將.key和.pem文件,通過scp命令拷貝到/etc/gitlab/ssl目錄下,使用openssl命令生成.crt文件,gitlab-ctl reconfigure,沒報錯,但不成功。
gitlab-ctl status查看,發現nginx沒有啟動成功。
gitlab-ctl tail查看日志,發現是nginx讀取.crt文件的時候發現格式錯誤。
查了半天,原因是openssl命令生成.crt文件的時候,格式參數設置為der了,實際上應該設置為pem。
vim看了一下已經過期的crt文件,果然顯示得整整齊齊,看新的這個crt文件,一堆亂碼。
用openssl重新生成crt,vim查看沒有亂碼了,再次gitlab-ctl reconfigure,搞定。
記下來,估計明年還得用到。