前言:随着云计算领域的飞速发展,云服务器已成为越来越多开发者的选择,其灵活可扩展的特性,为前端开发者提供了一种更方便更快捷的方式来部署和管理应用。本文将针对如何将 Express.js 应用部署到云服务器进行详细介绍。
选用云服务器
在进行 Express.js 应用部署之前,我们需要先选择一款云服务器。当前市场上有很多云服务器品牌可供选择,比如阿里云、华为云、腾讯云、AWS、Google Cloud 等,我们可以根据自己的需求和预算选择适合自己的云服务器。
搭建环境
部署 Express.js 应用需要先在云服务器上搭建环境,主要包括以下几个步骤:
安装 Node.js 和 npm
云服务器默认不会安装 Node.js 和 npm,需要手动安装。我们可以通过以下方式安装:
# 安装 Node.js curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash - sudo apt-get install -y nodejs # 安装 npm sudo apt-get install npm
安装 Express.js 和相关依赖
我们可以通过 npm 安装 Express.js 及其相关依赖:
# 安装 Express.js npm install express # 安装其他依赖 npm install --save-dev nodemon npm install --save-dev cross-env
nodemon 可以监视文件系统的更改并自动重启 Node.js 应用程序,cross-env 可以跨平台地设置并使用环境变量。
部署应用
部署应用之前,我们需要确保在本地已经开发完成并进行了测试,并且能够正常运行。接着,我们需要将代码上传至云服务器。
上传代码
我们可以使用 scp 命令将本地代码上传至云服务器上:
# 将本地代码上传至云服务器/home/ubuntu目录下 scp -r /path/to/local/code ubuntu@IP:/home/ubuntu
其中 IP 是云服务器的公网 IP 地址,ubuntu 是云服务器的用户名,/home/ubuntu 是云服务器的文件夹路径(可以根据自己的需要选择)。
运行应用
上传代码之后,我们需要在云服务器上运行应用。我们可以使用以下命令:
# 进入应用目录 cd /home/ubuntu/app # 安装依赖 npm install # 启动应用 node server.js
为了方便开发者修改代码并快速实时预览,我们可以使用 nodemon 监听文件更改并自动重启:
# 使用 nodemon 启动应用 nodemon server.js
HTTPS 部署
在生产环境下,我们通常需要为我们的应用启用 HTTPS,以确保应用的安全性。使用 HTTPS 部署需要我们先申请 SSL 证书,并将证书证书上传到云服务器,并配置应用使用 HTTPS。
申请 SSL 证书
我们可以通过使用 Let's Encrypt 等免费的证书颁发机构申请 SSL 证书。申请 SSL 证书的方式有很多种,这里我们介绍使用 Certbot 自动申请 SSL 证书的方式:
# 安装 Certbot sudo apt-get install certbot # 申请 SSL 证书 sudo certbot certonly --standalone
申请证书之后,证书会被保存在 /etc/letsencrypt/live
路径下。
配置应用使用 HTTPS
我们需要通过以下几个步骤来为我们的应用启用 HTTPS:
- 安装
https
模块:
npm install --save https
- 创建 SSL 证书配置:
-- -------------------- ---- ------- ----- -- - -------------- ----- ---------- - ---------------------------------------------------------------- -------- ----- ----------- - ------------------------------------------------------------- -------- ----- -- - -------------------------------------------------------------- -------- ----- ----------- - - ---- ----------- ----- ------------ --- -- --
其中,example.com
是我们申请证书时指定的域名。
- 将
http
替换为https
:
const https = require('https'); const express = require('express'); const app = express(); https.createServer(credentials, app).listen(443);
总结
本文主要介绍了如何将 Express.js 应用部署到云服务器上,包括选用云服务器、搭建环境、部署应用以及启用 HTTPS 等方面。希望通过本文的介绍,能够帮助到更多的前端开发者,快速高效地完成应用的部署,提高开发效率。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64df7725f6b2d6eab3aacaa7