服务器ssr进程启动怎么运行,要SSR? NUXT项目从初始化到部署服务器流程全记录

首先,简单介绍一下, nuxt.js 是什么

Nuxt.js 是一个 Vue.js的SSR通用框架,最常用的就是用来作SSR(服务器端渲染)。

首先说下 SSR,最近很热的词,意为 Server Side Rendering(服务端渲染),目的是为了解决单页面应用的 SEO 优化 的问题,对于普通的一般网站影响不大,但是对于论坛类,内容类网站来说是致命的,在国内, 百度/搜狗/等等的搜索引擎无法抓取页面相关内容,也就是用户搜不到此网站的相关信息(谷歌可以抓取vue等框架信息)。这也就是我们使用 nuxt.js 的主要原因,

目前常见的SSR开源框架(方式)有三个:

今天我们主要讲讲目前最成熟, 文档最详细, 拥有大量问题解决方案的nuxt.js

nuxt.js 优点:

基于 Vue.js

自动代码分层

服务端渲染

强大的路由功能,支持异步数据

静态文件服务

ES6/ES7 语法支持

打包和压缩 JS 和 CSS

HTML头部标签管理

本地开发支持热加载

集成ESLint

支持各种样式预处理器: SASS、LESS、 Stylus等

1.安装与初始化

脚手架安装成功后, yarn create nuxt-app 创建一个项目,

之后开始选择配置:

8bc0a5c038dee0fedcbdf76494cca07c.png

选择完成后自动开始安装!

🎉 Successfully created project nuxt.js

To get started:

cd nuxt.js

yarn dev

To build & start for production:

cd nuxt.js

yarn build

yarn start

✨ Done in 175.37s.

1

2

3

4

5

6

7

8

9

🎉Successfullycreatedprojectnuxt.js

Togetstarted:

cdnuxt.js

yarndev

Tobuild&startforproduction:

cdnuxt.js

yarnbuild

yarnstart

✨Donein175.37s.

2.启动项目

根据上述提示启动即可!

3. 打包编译, 怎么把项目部署到服务器

首先我们build之后, 拷贝

.nuxt

nuxt.config.js

package.json

这三个文件到服务器即可

拷贝到服务器后, 首先安装依赖, cnpm install

安装成功后, 执行 npm run start

如果没有错误, 会启动项目, 和本地启动一样, 其实这样我们就可以访问了,

开启 liunx 服务器的内外防火墙端口 , 然后浏览器直接访问: 你的 ip:端口号

4. 配置域名访问

当然只能带端口访问肯定不是我们想要的结果, 那么我们就需要配置 域名, 域名解析到服务端这些流程就不说了,

我们找到nginx的配置文件, 在 http{}模块里面新增:

upstream vrserver {

server 0.0.0.0:3356;

}

1

2

3

upstreamvrserver{

server0.0.0.0:3356;

}

其中ip地址写: 0.0.0.0:端口号

之后再新建一组 server{} ;正常nginx配置就不描述了,

比如我要配置成功: http:xxxx.com/v2/ 作为访问地址, 那就在 xxx.com的nginx 里面新建

location /v2/ {

proxy_pass http://vrserver;

proxy_set_header Origin '';

index index.html index.htm;

}

1

2

3

4

5

location/v2/{

proxy_passhttp://vrserver;

proxy_set_headerOrigin'';

indexindex.htmlindex.htm;

}

新建成功后, 重启nginx, 然后访问 http:xxxx.com/v2/ 就可以访问到我们的服务了

5. 怎么让我们的 nuxt.js服务一直启动

现在如果我们关闭终端, 那服务就关闭了, 接下来我们安装 pm2, 让服务在后台一直运行

然后新建一个 pm2.config.json

{

"apps": {

"name": "vr-sever",

"script": "npm run start",

"ignore_watch": [

"node_modules"

]

}

}

1

2

3

4

5

6

7

8

9

{

"apps":{

"name":"vr-sever",

"script":"npm run start",

"ignore_watch":[

"node_modules"

]

}

}

简单配置即可, 然后我们启动: pm2 start pm2.config.json

6 其他问题

如何配置https

如果让代码修改后自动重启

7.项目体验

目前芊云全景使用的是 nuxt.js 的服务, 具体体验请浏览:  https://vr.he29.com/v3/

为什么要学习服务端渲染 nuxt.js ? 现在我们的项目大多数都是SPA(单页面应用),在实际开发过程中单页面应用比之前的模板渲染要好很多,首先单页面应用是前后端分离,架构清晰,前端负责交互逻辑,后端负责数据,前后端单独开发,独立测试。但是,SPA不利于SEO(搜索引擎优化)。让搜索引擎更为信任该网站,通过提升排名获得更多网站流量,对于某些类型的网站是非常有必要的。目前大部分的Vue项目本质是 SPA 应用,React、Angular也都是SPA应用。SPA应用广泛用于对SEO要求不高的场景中。在我们开发的过程中,我们有 SEO 的需求,我们需要搜索引擎更多地抓取到我们的项目内容,此时我们需要SSRSSR保证用户尽快看到基本的内容,也使得用户体验性更好。 Nuxt.js 是一个 Node 程序,基于vue.js开发的一套服务端渲染的框架,必须使用 Node 环境。我们对 Nuxt.js 应用的访问,实际上是在访问这个 Node.js 程序的路由,程序输出首屏渲染内容 + 用以重新渲染的 SPA 的脚本代码,而路由是由 Nuxt.js 约定好的 pages 文件夹生成的,开发只需要遵循一定的约定,直接使用vue.js开发我们项目也是非常轻松的。 课程案例 (1) HOME PAGE (2) Jokes Page  (3)About Page  课程概述 在本课程中,大喵将使用 nuxt.js + bootstrapVue + json-server 开发实战性质一个入门级项目,带着大家来体验服务端渲染(SSR项目构建的过程;介绍 nuxt.js项目目录的结构,每个文件夹和文件的基本概念和作用,以及nuxt.config.js 配置文件的基本介绍;页面公共结构处理,路由页面跳转配置处理;axios 接口请求;带着大家来熟悉及掌握 bootstrapVue UI组件库的使用;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值