背景
有a,b兩個(gè)前端項(xiàng)目党巾。
服務(wù)器1曾經(jīng)部署了a抵栈,服務(wù)器2部署了a,b
后產(chǎn)品融合事镣,b的代碼融合進(jìn)入a
b項(xiàng)目提供了一個(gè)功能步鉴,可以通過url顯示圖片
問題現(xiàn)象
服務(wù)器1上,通過url訪問無(wú)法正常顯示圖片
服務(wù)器2上璃哟,通過url可以正常顯示圖片
排查思路
由于后來b項(xiàng)目的代碼融合進(jìn)入a氛琢,所以服務(wù)器1上顯示圖片的功能應(yīng)該是由a項(xiàng)目提供的
服務(wù)器2上顯示功能也應(yīng)如此。
于是打開2個(gè)服務(wù)器上的nginx配置随闪,比較兩個(gè)服務(wù)器上a項(xiàng)目的轉(zhuǎn)發(fā)配置阳似,發(fā)現(xiàn)是一樣的,無(wú)任何區(qū)別铐伴。
繼續(xù)觀察頁(yè)面撮奏,打開chrome的控制臺(tái),查看訪問服務(wù)器2的url時(shí)的請(qǐng)求当宴,發(fā)現(xiàn)訪問路徑是www.****.com/patientrecruit/linkDisplay?patientId=****&type=***
服務(wù)器1的url也是該路徑畜吊,但是訪問時(shí)報(bào)錯(cuò)
查看兩臺(tái)服務(wù)器的nginx配置,發(fā)現(xiàn)服務(wù)器2上之前配置了/patientrecruit的轉(zhuǎn)發(fā)户矢,服務(wù)器1上沒有配置玲献,但是現(xiàn)在已經(jīng)把b的代碼融合進(jìn)a了,這個(gè)轉(zhuǎn)發(fā)應(yīng)該去掉梯浪。于是我直接刪除/patientrecruit的轉(zhuǎn)發(fā)路徑下的靜態(tài)資源捌年,再次訪問/patientrecruit,發(fā)現(xiàn)404驱证。說明之前一直是按照該路徑去展示圖片的延窜。這樣看起來,服務(wù)器1和2都有問題了抹锄。
于是找到前端開發(fā)人員逆瑞,再次詳細(xì)詢問該業(yè)務(wù)邏輯荠藤,原來除了前端的改動(dòng)外,后端也需要配合這個(gè)url的改動(dòng)進(jìn)行代碼改動(dòng)获高。找到后端開發(fā)人員哈肖,然后比對(duì)代碼,發(fā)現(xiàn)該url是在nacos中進(jìn)行配置念秧,于是打開nacos淤井,發(fā)現(xiàn)果真沒有改動(dòng)配置。修改配置后摊趾,一切正常币狠。