近來有個項目采用的前后端分離開發,前端純html+js,后端是微服務架構。
使用nginx部署靜態網頁,感覺很方便,就是第一次配置,有些撓頭,特別記錄一下。
我的是windows系統,下載下來windows-nginx的壓縮包,解壓縮就行了,啟動的話直接點擊.exe,啟動成功,你會在logs下面看到一個.pid的文件,里面有啟動nginx進程號。關閉要用cmd命令,進入到nginx目錄,用命令nginx.exe -s stop;
配置nginx需要修改conf下的nginx.conf;修改server內容。
listen表示要監聽的端口;
server {
listen 88;
#server_name localhost;
location / {
root D:/javaCode/workspace/html-ui;
}
location /test1/ {
proxy_pass http://localhost:6785/;
}
}
配置"location / ";root指向靜態頁面所在文件加位置;例如你的首頁絕對路徑為D:/javaCode/workspace/html-ui/login.html,那么配置好你的登錄也url就是http://localhost:88/login.html
配置好,需要重新加載一下nginx,命令為nginx.exe -s reload
后端為微服務,restcontroler的地址為http://localhost:6785/server/XX/XX/queryXX 這種;前端涉及跨域訪問了,利用nginx的反向代理解決。
每個微服務都有自己的端口,例如你有很多微服務接口在不同的微服務,你可能需要配置多個反向代理,我舉例一個。
前端請求url設置為 /test1/server/XX/XX/queryXX,在nginx配置中配置"location /test1/" proxy_pass 就是攔截然后跳轉;這塊注意一下后面的/,沒有后面的/一直報錯404,頁面找不到,可以看看自己有沒有着這種問題。
OK,全部配置好了。