如何将打包好的静态网页部署至服务器

在完成书查查应用之后,需要将应用部署至服务器,记录一下部署的过。

本地成功运行

首先是运行 npm run build 打包应用,打包好的页面是无法直接访问的,具体原因在这里:Vue-cli 部署

大概内容是:

dist 目录需要启动一个 HTTP 服务器来访问 (除非你已经将 baseUrl 配置为了一个相对的值),所以以 file:// 协议直接打开 dist/index.html 是不会工作的。在本地预览生产环境构建最简单的方式就是使用一个 Node.js 静态文件服务器。

所以我需要使用 Node.js 起一个静态服务器,我这里用的是 Express,方法: 利用 Express 托管静态文件

只需要很简单的几行代码:

const express = require('express');
const app = express();
app.use(express.static('./dist'));

const port = 3003;

app.listen(port, function (err) {
  if (err) {
    console.log(err);
    return;
  }
  console.log('Listening at http://localhost:' + port + '\n');
});
复制代码

然后运行 node filename.js 服务就成功起来啦。这时候访问 localhost:3003 就可以访问部署好的静态页面。

下一步是上传代码到服务器。

上传文件到服务器

我使用的是 scp 命令上传文件到服务器上的,具体代码是:

scp -r ./dist root@120.79.162.***:/home/library-book-search/web/

// 将 dist 文件夹 上传至 120.79... 的 /home/library-book/search/web/ 中
复制代码
  • scp:上传命令
  • -r:上传文件是文件夹
  • ./dist:本地需要上传文件的位置
  • root@120...:使用 root 用户名登录远程服务器 120....
  • :/home/library-book-search/web/:表示保存在远程服务器上的地址

回车之后输入服务器密码,就可以等待文件上传成功了。

在服务器上起服务

首先进入到项目所在的文件夹,然后和在本地一样,运行 node filename.js 这样服务就成功跑起来了,然后访问发现并不 ok,捣鼓半天之后阿里云这个端口并不是默认开放的,所以需要在阿里云的控制台把这台服务器需要使用的端口打开。

成功开启端口之后终于访问成功了,于是美滋滋的关掉命令行,准备和朋友炫耀一番,结果打脸了,又访问失败了。再一顿思考之后发现,当关闭命令行界面之后,node 服务会自动关闭。所以我们的服务就扑街了。

这个时候就需要使用 PM2 来维护我的服务啦,在服务起上全局安装 PM2 之后,pm2 start filename.js ,项目就真正的完美啦。这下关掉命令行界面也不用担心任务爆炸了。

要将本地网页部署服务器,可以按照以下步骤进行操作: 1. 将前端项目的文件(包括index.html、js、css和静态资源)放到服务器的指定目录下。例如,可以将这些文件放到C:\inetpub\wwwroot目录下,这是IIS服务器的默认网站根目录。这样,当访问服务器的公网IP时,就可以看到部署网页了。\[1\] 2. 另一种方法是使用云存储服务,例如七牛云。在打包Vue项目时,可以将publicPath配置成七牛云的地址,并将打包后的资源上传到七牛云上。然后,在服务器上只需要放一个index.html文件即可。这样可以提高网页访问速度,并减轻服务器的负载。\[2\] 3. 如果你的网页需要与数据库进行交互,可以使用MySQL的备份工具mysqldump将数据库备份到本地。然后,将备份文件上传到服务器上的指定目录。可以使用以下命令将数据库备份到本地:\[3\] "C:/Program Files/MySQL/MySQL Server 8.0/bin/mysqldump" --opt -u root --password=yourpassword yourdatabase > D:/db_backup/lily_%Ymd%.sql 通过以上步骤,你就可以将本地网页成功部署服务器上了。 #### 引用[.reference_title] - *1* *2* *3* [[其他] 如何将node+vue项目部署服务器](https://blog.csdn.net/qq_40999917/article/details/107905251)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值