当前位置: 首页 >> 财务 > 内容页
一文搞定nuxt.js搭建到部署(ssr和静态部署)
来源:博客园     时间:2023-04-26 11:17:50

先npm 安装包然后定义一个JS在plugins文件夹里面引入

再在nuxt.config.js里面配置plgins配置项

到这里就完成了对flexable.js的引入和使用。

但是因为flexable.js主要是适配移动端的所以我们要对其源码进行更改

node_modules\lib-flexible\flexible.js文件中

refreshRem方法

下一步就是引入postcss-pxtorem。

build: {    postcss: {      plugins: {        "postcss-pxtorem": {          rootValue: 192,          propList: ["*"],          minPixelValue: 2        }      }    },  },

这样就完成了适配

四、如何将开发好的nuxt项目部署到服务器上?

(1)ssr渲染:

首先来介绍如何进行SSR渲染:开发完成项目之后,将nuxt.confing.js里面的SSR配置项设为false,然后将target配置项设置为:server

运行npm run build进行打包

打包后会生成.nuxt文件夹

这时候可以先本地执行 npm start 看一下是否正常启动。

启动后看一下网路请求里面的document是否是有内容的html的页面

如果是就代表SSR本地启动成功了。这时候咱们需要把它部署到服务器上去。第一步是连接到你的服务器,这里我用的是mobaXterm

进入服务器之后随便找一个文件夹新建一个文件夹将咱们nuxt项目中的相关文件丢进去

需要丢的有

这里注意最好保证本地node版本和服务器上的一致。

当然你也可以除了node_nodules全部丢进去。

然后在服务器是执行npm start即可,当然你得进入项目所在的文件夹

可以看到在服务器上项目已经跑起来了,这时候你点击listening后面得连接时进不去得因为那是私网的域名。

这时候你需要在nginx上面进行反向代理

这时候在你的服务器上面找到nginx/conf.d文件夹,在下面新建一个.conf文件进行代理配置

server {      listen 9001;//监听的端口,就是你要访问的端口      server_name 112.47.58.10;//你的域名      location / {      proxy_pass http://localhost:3001;//这里配上代理的端口和域名,针对nuxt咱们只需要该后面的端口就行了因为跑在服务器上代理到本机就行
} } 

当然你需要把你监听的9001端口在安全组中打开

然后就可以通过 http:域名:端口访问了。(2)SPA方式部署:将项目部署为普通的spa应用的步骤:  1.设置nuxt.config.js文件中的ssr配置项为false  2.执行npm run generate打包,这里可能会报错xxx is not in cwd,这时你需要找到node_modules@nuxt\cli\dist\cli-generate.js文件修改以下代码  
export async function snapshot ({ globbyOptions, ignore, rootDir }) {  const snapshot = {}   const files = await globby("**/*.*", {    ...globbyOptions,    ignore,    cwd: rootDir,    absolute: true  })

把上面的cwd :rootDir改为cwd : upath . normalize ( rootDir ) 就好了。

const  files  =  await  globby__default [ "default" ] ( "**/*.*" ,  {     ... globbyOptions ,     ignore ,     cwd : upath . normalize ( rootDir ) ,     absolute : true   } ) ;
执行完命令会在根目录生成dist文件
同样在服务器任意位置新建一个目录,将dist文件夹丢入即可
然后就是进行nginx的配置可以在已有的.cof文件中新加server,也可以新建一个.cof文件写server
server {      listen 4567;//监听的端口      server_name 21.23.18.12;//你的域名或者Ip地址      location / {        root /home/nxutsever/dist;  //重定向的目录,就是你的dist文件夹所在的位置        try_files  $uri $uri/ dist/index.html;//搜索的文件,就是dist下面的index.html        index  index.html index.htm;//index配置项      }    }

配置完成之后重启nginx,在浏览器输入http://ip+:端口号即可访问。

标签:

广告

X 关闭

广告

X 关闭