nuxt.js express模板项目服务器部署

 nuxt版本:0.10.6html

技术栈:nuxt.js, express, pm2vue

部署环境:windows servernode

以前用nuxt.js 的express的模板项目在windows下用nginx进行代理访问,其实有点多余,直接用host文件就能够达到相同的效果,仅供娱乐吧,熟悉一下nginx的基本配置也是好的,其实这段时间研究nuxt.js比较多,主要仍是想提升客户端访问首页更快一点。nginx

以前使用nuxt.js generate直接生成对应的html静态文件,这个不须要服务器安装什么特殊的环境。express

以iis为例,直接把dist文件夹下生成的文件丢到对应的目录就能够了,其余的也是同样拷贝目录文件,这种方式是客户端访问最快的方式,可是生成html静态文件的过程可能有点痛苦,服务器数据有变化的时候要及时地更新对应的静态html文件,好比要跑一些增量更新数据的服务,数据更新这一块的复杂度就上去了。(后续再补充一下nuxt.js 用generate命令生成静态html的范例)npm

对于后端数据变化比较频繁且及时性要求高的应用来讲,须要生成静态html文件不少的状况下,循环生成的方式难以知足要求,如下是一个nuxt.js在服务端世界挂在node.js的环境运行的方式。json

生成模板项目windows

vue init nuxt/express mynuxtexpress

拷贝mynuxtexpress目录下的文件夹到服务器上,例如我拷贝到D:\nuxt目录下后端

服务器上须要安装node.js,安装好后,cmd打开D:\nuxt目录,更新依赖包浏览器

npm install

编译

npm run build

运行

npm run start

浏览器输入http://localhost:3000就能够正常访问了,可是在服务器上若是关掉了cmd命令行窗口,服务就自动中止了

这里介绍一个管理node.js应用进程的管理器pm2,安装也很简单

npm install -g pm2

而后使用pm2启动应用

pm2 start ./build/main.js

启动成功后

基本到这里环境就差很少了,nuxt.js源代码若是不想放在服务器上,能够删除除了.nuxt, build, node_modules文件夹和package.json文件的其余文件和文件夹,可是每次发布build和.nuxt两个文件夹和package.json文件须要进行更新,若有依赖包更新,直接运行更新依赖包命令就能够了

另外默认的服务是host在127.0.0.1本机上,在部分服务器上,如云服务器使用虚拟ip的服务器上,localhost和127.0.0.1均可以访问,可是使用内网的ip没法访问,这也直接致使了服务器外网即便端口开启了,也没有办法访问站点,须要更改server/index.js的host配置,去掉host参数

而后从新编译运行,发布就能够了。

 nuxt.js还在发展阶段,很期待即将到来的1.0的版本,其实如今线上的项目已经开始使用了,若是以为不错,那么试一试吧,用得人多了,发展也就更快了!

相关文章
相关标签/搜索