【前端】NodeJS:项目上线

文章目录

  • [1 项目上线](#1 项目上线)
    • [1.1 搭建本地仓库](#1.1 搭建本地仓库)
      • [1.1.1 初始化仓库](#1.1.1 初始化仓库)
      • [1.1.2 全局忽略](#1.1.2 全局忽略)
      • [1.1.3 提交](#1.1.3 提交)
    • [1.2 连接远程仓库](#1.2 连接远程仓库)
      • [1.2.1 新建仓库](#1.2.1 新建仓库)
      • [1.2.2 复制地址](#1.2.2 复制地址)
      • [1.2.3 添加远程存储库](#1.2.3 添加远程存储库)
    • [1.3 发布项目](#1.3 发布项目)
  • [2 配置HTTPS证书](#2 配置HTTPS证书)
    • [2.1 HTTPS](#2.1 HTTPS)
    • [2.2 操作流程:](#2.2 操作流程:)

1 项目上线

1.1 搭建本地仓库

1.1.1 初始化仓库

1.1.2 全局忽略

1.1.3 提交

1.2 连接远程仓库

1.2.1 新建仓库

在远程仓库(代码管理)平台新建仓库。

1.2.2 复制地址

空仓库建好后复制地址。

1.2.3 添加远程存储库

粘贴之前复制的地址。

1.3 发布项目

远程仓库添加好后,提交项目。

2 配置HTTPS证书

2.1 HTTPS

  • https本意是http+SSL(Secure Sockets Layer 安全套接层)。
  • https可以加密HTTP报文,所以大家也可以理解为是安全的HTTP。
  • 工具官网:https://certbot.eff.org/
  • https可以对服务端所响应的结果进行加密,也可以对客户端所发送出来的请求进行加密,并且只有对方能解密,中间人即使获得报文看到内容,也不能解密其中的数据。

2.2 操作流程:

  1. 下载工具:https://dl.eff.org/certbot-beta-installer-win_amd64.exe
  2. 安装工具。
  3. 管理员运行命令:certbot certonly --standalone
  4. 代码配置如下:
javascript 复制代码
const https = require('https');
https.createServer(
{
	key: fs.readFileSync('/etc/letsencrypt/path/to/key.pem'),
	cert: fs.readFileSync('/etc/letsencrypt/path/to/cert.pem'),
	ca: fs.readFileSync('/etc/letsencrypt/path/to/chain.pem'),
}, app
).listen(443, ()=>{
	console.log('Listening...')
})

首先先获取证书:certbot,接下来所有操作都需要在服务端操作。

  1. 证书更新。证书有效期为三个月,可以通过下面的命令更新:
javascript 复制代码
// 一般更新
certbot renew
// 强制更新
certbot --force-renewal
相关推荐
海上彼尚1 小时前
Nodejs也能写Agent - 16.LangGraph篇 - 条件分支与循环
前端·后端·langchain·node.js
To_OC2 小时前
从 “卡死半天” 到 “打字机效果”:大模型流式输出前端实现全记录
前端·javascript·llm
rockey6272 小时前
基于AScript的JavaScript脚本语言发布啦
javascript·c#·.net·js·script
SoaringHeart3 小时前
Flutter最佳实践:键盘辅助视图输入框天添加图片附件
前端·flutter
kyriewen3 小时前
我看完这篇安全论文——AI推荐的npm包,92%是编出来的
前端·javascript·ai编程
心中有国也有家4 小时前
AtomGit Flutter 鸿蒙客户端:Canvas 绘制进阶-路径、渐变与混合模式
android·javascript·flutter·华为·harmonyos
2501_915106324 小时前
TraceEagle 代理抓包教程 本机和手机的 HTTPS 抓包方法
网络协议·计算机网络·网络安全·ios·adb·https·udp
小心我捶你啊4 小时前
数据采集和Web解锁不是一回事,从用途到规则区分
前端·爬虫·网络协议
hunterandroid5 小时前
[鸿蒙从零到一] ArkUI 基础组件实战:Text、Image、Button 与 TextInput
前端