以前接触的比较多的是SPA单页面应用,前端路由渲染,对于node服务端渲染刚开始了解到,服务端渲染的话相对于SPA来讲有助于SEO优化,首屏加载更快。css
和以前的SPA项目不一样,以前公司spa的发布部署有两种方式,一种是前端项目打包以后发给后端,后端集成到项目里一块儿发布,html
另外一种是前端项目打包以后单独部署,和后端接口分开部署。前端
ssr是这样的:包括前端和后端,后端只提供接口,前端须要写client客户端和server服务端代码,client也就是最后打包出来的js css代码,node
server端是用模板引擎渲染出页面,引用client的js,css。客户端的静态资源部署到cdn, 服务端用eggjs(基于koa)框架,利用nunjucks进行模板渲染。git
至关于服务端的工做就是把已有的页面用模板渲染的方式来渲染出来。github
若是是已有的spa项目想要用ssr来渲染的话,可对已有项目进行打包拆分,而后用egg来进行渲染。后端
node中间层。大体目录结构:框架
eggjs官网文档 ,能够利用脚手架快速初始化。koa
须要注意的是public文件夹下一般是放静态资源,实际项目中是没有用到这个,是吧js和css静态资源放到cdn,而后在模板文件中直接去根据地址名称来引用的。优化
写了个简单的demo。。 egg-demo:https://github.com/leitingting08/egg-demo