debugger
node-inspector
- nodeJs 中間層
- 現(xiàn)在越來越強(qiáng)調(diào)前后端分離,但是具體怎么才算前后端分離呢妨托?
之前很淺顯地認(rèn)知是场钉,后端提供api俐银,前端調(diào)用api,貌似這也是經(jīng)常被人提起的前后端分離常用的模式理逊。但是其中有一個(gè)問題橡伞。就是當(dāng)前端需要的數(shù)據(jù)是需要通過調(diào)用幾個(gè)api接口來進(jìn)行拼接獲得盒揉,這相當(dāng)于前端需要對數(shù)據(jù)進(jìn)行更多的處理,影響了性能和體驗(yàn)兑徘。所以我們要加一層nodejs中間層來解決前端需要計(jì)算的過程刚盈。
參考
請求轉(zhuǎn)發(fā)
在本項(xiàng)目中,是直接將請求進(jìn)行轉(zhuǎn)發(fā)了挂脑。同時(shí)對于一些數(shù)據(jù)要處理的接口藕漱,進(jìn)行了編寫。
具體如下:
- 怎么將expressJs部署到阿里云崭闲,同時(shí)使用nginx,做為反向代理肋联,同時(shí)使用vue
- 使用了vue,是之前項(xiàng)目刁俭,通過vue-cli來進(jìn)行開發(fā)的單純的前端項(xiàng)目橄仍,現(xiàn)在項(xiàng)目開發(fā)完成之后,進(jìn)行打包
npm run build
,生成dist文件夾薄翅,這個(gè)是做為靜態(tài)目錄沙兰,放到express-generator生成的文檔結(jié)構(gòu)中去的。- 然后將其通過git hooks自動(dòng)部署到服務(wù)器中翘魄,并且
npm install
鼎天,進(jìn)行npm包安裝,當(dāng)包安裝完成之后暑竟,開始弄nginx,- 首先安裝nginx,自己找教程斋射,不行看官方文檔去。然后要配置一個(gè)nginx.conf文件用來反向代理但荤。
upstream hello {
server 127.0.0.1:8081;} // 要代理的地址
server {
listen 80; // 監(jiān)聽地址
server_name komolei.cn;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Nginx-proxy true;
proxy_pass http://127.0.0.1:8081; // 代理地址
proxy_redirect off;
}
}
然后sudo nginx -t
查看是否配置ok罗岖,然后重啟nginxsudo service nginx reload
- 最后使用pm2來開啟守護(hù)
pm2 start bin/www (express項(xiàng)目中的bin目錄下的www)
- 最后記得我們是用了阿里云的服務(wù)器,他那邊有個(gè)實(shí)例的安全組腹躁。記得打開8081端口(慘痛教訓(xùn)桑包,記得一定要開)
- 使用nuxt完成seo
在離職之前,對公司的項(xiàng)目用nuxt進(jìn)行了nuxt重構(gòu)纺非,但是并不是完全按照nuxt的官方文檔的寫法進(jìn)行書寫的哑了,比如沒有用到asyncData等api。這點(diǎn)是有點(diǎn)遺憾的烧颖。畢竟重構(gòu)也是要花大把的時(shí)間弱左。。炕淮。
然后就多加了一些meta標(biāo)簽拆火,并同時(shí)部署到服務(wù)器上。
坑: 在書寫bash腳本的時(shí)候,忘記加上chmod +x [文件名]
同時(shí)在nuxt生成的過程中们镜,默認(rèn)是打開3000端口的币叹。然后在配置nginx反向代理的時(shí)候,也是使用了3000端口憎账,導(dǎo)致一直無法訪問(以上在阿里云也是開放了3000端口)套硼,一開始還以為自己部署有問題,嘗試胞皱,重寫邪意,重新部署好多次。突然搜索過程中看見有網(wǎng)友說nuxt3000端口是有問題的反砌,所以直接使用了在nginx上使用8081端口雾鬼,現(xiàn)在想起來應(yīng)該是端口3000已經(jīng)被占用了,我還想去轉(zhuǎn)發(fā)宴树。簡直麻瓜策菜。
- 目標(biāo),造個(gè)輪子酒贬,集成前端vue開發(fā)環(huán)境和express后臺(tái)又憨,加mongoodb的一個(gè)項(xiàng)目