使用node开启 https 本地服务 使用express服务部署vue项目

1 篇文章 0 订阅
本文详细介绍了如何在Node.js项目中启用HTTPS服务,包括生成SSL证书、安装依赖、配置Express以处理静态文件和Vue项目。重点步骤包括设置服务器、使用私钥和证书以及处理静态资源的正确路径。
摘要由CSDN通过智能技术生成

怎么启用 https 的 node 服务?

1.创建一个文件夹 nodeServer
2.在Node.js项目中启用HTTPS,您需要生成一个SSL证书 (用于测试时)
// 安装
openssl req -nodes -new -x509 -keyout server.key -out server.cert

// 回车后出现 地区输入 CN 后面的一路回车即可
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:

// 成功后会出现 server.key 和 server.cert 两个文件
3.安装所需包
// 初始化
npm init
// 注意对应的node版本
npm install express
4.在nodeServer文件下创建 server.js
const app = require("express")()
const fs = require("fs")

// 私钥跟证书
const httpsOption = {
  key: fs.readFileSync("./server.key"),
  cert: fs.readFileSync("./server.cert"),
}

// 创建https
const https = require("https").Server(httpsOption, app)
// 端口
const port = 3000

// 定义根路由
app.get('/', (req, res) => {
  res.send("<h1>你好啊,https</h1>")
})

https.listen(port, () => {
  console.log(`服务启动成功!`)
  console.log(`https://localhost:${port}`)
})
5.运行
node ./server.js

// 出现 服务启动成功!  即可访问 https://localhost:3000

node运行vue项目

上面已经成功的起了node服务,可以定义接口模拟数据等
现在需要能访问一些静态文件

可以在当前文件夹下放入 dist 文件 引入vue项目并打包 访问dist (则无需复制文件到处放)

// 1. 需要引入
const express = require('express')
const path = require('path')
// 2.设置静态资源访问目录
app.use(express.static('dist'))
// 3.当任何路由未匹配到时,均返回index.html以支持前端路由管理
// 解决刷新就不能访问
app.get('*', function (req, res) {
  res.sendFile(path.join(__dirname, 'dist', 'index.html'));
});

或 

app.use(express.static('./vue/dist'))
app.get('*', function (req, res) {
  res.sendFile(path.join(__dirname, './vue/dist', 'index.html'));
});

注意:

当把vue项目打包的dist文件放进去访问时,页面可以出来,但静态资源报错,可以查看config配置文件
publicPath: process.env.NODE_ENV === "production" ? "/" : "/",
应该改为 ./

========================================

目录
在这里插入图片描述
整体代码

const app = require("express")()
const express = require('express')
const fs = require("fs")
const path = require('path')

// 私钥跟证书
const httpsOption = {
  key: fs.readFileSync("./server.key"),
  cert: fs.readFileSync("./server.cert"),
}

// 创建https
const https = require("https").Server(httpsOption, app)

// 端口
const port = 3000

// app.use(express.static('dist')) // 设置静态资源访问目录
app.use(express.static('./vue/dist')) // 设置静态资源访问目录

// 当任何路由未匹配到时,均返回index.html以支持前端路由管理
app.get('*', function (req, res) {
  res.sendFile(path.join(__dirname, './vue/dist', 'index.html'));
});

https.listen(port, () => {
  console.log(`服务启动成功!`)
  console.log(`https://localhost:${port}`)
})

使用express服务部署vue项目

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在node.js服务器上部署Vue项目,可以按照以下步骤进行操作: 1. 首先,确保你的服务器上已经安装了Node.js和npm。 2. 在服务器上创建一个文件夹(例如,项目文件夹),将你的Vue项目的dist目录上传到该文件夹中。 3. 在终端中切换到该项目文件夹的路径下,然后运行```npm install```命令,以安装项目所需的依赖包。这将根据项目中的package.json文件自动安装所有依赖项。 4. 创建一个名为server.js的文件,并在其中编写以下代码来配置Node.js服务器: ``` // 引入express const express = require('express'); // 调用express,创建一个app服务实例对象 const app = express(); // 指定静态资源 app.use(express.static(__dirname + '/dist')); // 配置后端路由 app.get('/api/person', (req, res) => { console.log('访问到了'); // 给客户端返回数据 res.send({ name: 'lily', age:18 }); }); // 设置端口监听 app.listen(5000, (err) => { if (!err) console.log('服务器启动成功了!'); err && console.log(err); }); ``` 5. 在终端中运行```node server.js```命令,启动Node.js服务器。 6. 现在,你可以通过访问服务器的IP地址或域名加上端口号来访问你的Vue项目。例如,如果你的服务器IP地址为192.168.0.1,端口号为5000,那么你可以在浏览器中输入```http://192.168.0.1:5000```来访问你的Vue项目。 请注意,上述代码仅提供了一个基本的配置示例,你可能需要根据你的项目需求进行更多的配置。例如,你可能需要配置代理来解决跨域问题,或者使用HTTPS来提供安全的连接等等。具体的配置取决于你的项目要求和服务器环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值