半個(gè)月前,公司官網(wǎng)服務(wù)器SSL證書快到期了需要替換,拿到證書以后,簡單,小菜一碟,修改配置文件 -> 上傳新證書 -> 重啟Nginx服務(wù),打開瀏覽器輸入網(wǎng)址確認(rèn)一看,咦,并沒有替換成功?瀏覽器上顯示的還是原來的證書?不合常理啊,按照以往我就這簡單三步曲,一分鐘搞定了。
以下開啟了證書為什么替換不成功的懷疑人生的排查之路:
- 1、清除瀏覽器緩存 —— 怎么還是舊證書?
- 2、刪除服務(wù)器上的舊SSL證書 —— 服務(wù)器上都沒有你了,總不能瀏覽器上還是你吧……嗯???為什么還是你???
- 3、重啟Nginx ——
nginx -t檢查配置是沒問題的,第一次重啟的時(shí)候,用的nginx -s reload是平滑重啟,不會(huì)強(qiáng)制結(jié)束正在工作的連接,需要等所有連接都結(jié)束才會(huì)重啟,或許是我重啟的姿勢(shì)不正確?nginx -s stop后再start nginx……媽耶,我不想看到你了,你快走吧! - 4、殺掉Nginx進(jìn)程并重啟 —— 查閱了資料,看到很多人說修改Nginx配置后不生效的原因之一是可能誤開了多個(gè)進(jìn)程導(dǎo)致,把進(jìn)程全都?xì)⒌糁笾貑ginx……嗯???你是不是哪里有分身?
- 5、嘗試修改其他配置,重啟后,其他配置生效了,但是證書還是原來那個(gè)證書,那這就說明不能這邊Nginx上的問題了。
所有可以操作的都做了,也明確了不是Nginx服務(wù)器的問題了。由于這個(gè)服務(wù)器的歷史遺留問題,現(xiàn)在沒人運(yùn)營并且不知道還有什么其他的配置,最后只能在騰訊云提工單,好在騰訊云的工程師很給力,很快就排查出了是CDN的問題,最后順利解決了。

反思
在查閱資料的過程中也看到有人提出是因?yàn)镃DN緩存的問題,但是自己接觸這個(gè)服務(wù)器以來沒有了解過這個(gè)服務(wù)器是否配置過CDN并且也沒聽到相關(guān)人員提起過,所以就直接略過了這一點(diǎn)沒有去驗(yàn)證了,做事情多去驗(yàn)證一步自己就能少走些彎路。