大前端繼續(xù)火爆,數(shù)據(jù)的前后分離,成為了一個(gè)不可阻擋的趨勢(shì)。后端只提供數(shù)據(jù)接口,前端來(lái)處理一些業(yè)務(wù)上的邏輯處理。只要數(shù)據(jù)接口定義好,前后端同時(shí)根據(jù)接口文檔進(jìn)行開(kāi)發(fā),(當(dāng)然接口文檔一般會(huì)經(jīng)常改的,哈哈),無(wú)論是前端通過(guò)ajax 請(qǐng)求來(lái)渲染數(shù)據(jù),還是通過(guò)前端搭建一個(gè)服務(wù)器通過(guò)ejs 模版渲染,都會(huì)存在一個(gè)問(wèn)題,前端都需要搭建一個(gè)服務(wù)器環(huán)境。(或者用fiddler等一些代理工具進(jìn)行代理)。
還有一個(gè)問(wèn)題,假如你想訪問(wèn)端口為3000的域名的時(shí)候,一般人可能在域名后面加端口,可是一般人是會(huì)記端口是多少的,你見(jiàn)過(guò) 輸入www.baidu.com 的時(shí)候后面還加端口的嘛。這里 nginx 可以幫你做反向代理。也就是說(shuō)你以為你訪問(wèn)的是80 端口,其實(shí)在nginx 配置那里我已經(jīng)轉(zhuǎn)到訪問(wèn)了3000的端口了。
現(xiàn)在,先了解 nginx 的正向代理。
server {
listen 80;#監(jiān)聽(tīng)端口號(hào)
server_name www.77544.top 77544.top;#你的域名
location / {
root /usr/share/nginx/html/app;#網(wǎng)站入口
index index.html index.htm;#訪問(wèn)的默認(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;
}
}
這樣就完成了一個(gè)最簡(jiǎn)單基礎(chǔ)的代理。當(dāng)然nginx 不可能就這點(diǎn)作用,還有很多用途等著我們?nèi)ヌ骄磕亍?/p>