大前端繼續(xù)火爆整吆,數(shù)據(jù)的前后分離辉川,成為了一個不可阻擋的趨勢。后端只提供數(shù)據(jù)接口府蛇,前端來處理一些業(yè)務(wù)上的邏輯處理屿愚。只要數(shù)據(jù)接口定義好务荆,前后端同時根據(jù)接口文檔進(jìn)行開發(fā)函匕,(當(dāng)然接口文檔一般會經(jīng)常改的蚪黑,哈哈),無論是前端通過ajax 請求來渲染數(shù)據(jù)忌穿,還是通過前端搭建一個服務(wù)器通過ejs 模版渲染,都會存在一個問題屈芜,前端都需要搭建一個服務(wù)器環(huán)境朴译。(或者用fiddler等一些代理工具進(jìn)行代理)。
還有一個問題毅糟,假如你想訪問端口為3000的域名的時候澜公,一般人可能在域名后面加端口,可是一般人是會記端口是多少的迹辐,你見過 輸入www.baidu.com 的時候后面還加端口的嘛甚侣。這里 nginx 可以幫你做反向代理。也就是說你以為你訪問的是80 端口印荔,其實在nginx 配置那里我已經(jīng)轉(zhuǎn)到訪問了3000的端口了详羡。
現(xiàn)在,先了解 nginx 的正向代理水泉。
server {
listen 80;#監(jiān)聽端口號
server_name www.77544.top 77544.top;#你的域名
location / {
root /usr/share/nginx/html/app;#網(wǎng)站入口
index index.html index.htm;#訪問的默認(rèn)文件,當(dāng)然如果你的是php 也可以加php.html
}
}
再看一下反向代理:
#設(shè)置需要代理的一些信息
upstream mynodejs{
server 127.0.0.1:3000;
}
server {
listen 80;
server_name www.77544.top 77544.top;
location / {
proxy_pass http://mynodejs;#上面的代理的名字
index index.html index.htm;
}
}
這樣就完成了一個最簡單基礎(chǔ)的代理钢拧。當(dāng)然nginx 不可能就這點作用炕横,還有很多用途等著我們?nèi)ヌ骄磕亍?/p>