Linux命令查询网站(cmd.delu7.cn)部署小结
一、 项目与背景
本次部署的项目为
linux-command,一个开源的Linux命令查询工具。其核心是一个静态网站,提供了对600多个Linux命令的搜索、详解和示例功能。项目源码仓库位于:GitHub - jaywcjlove/linux-command at gh-pages二、 部署环境
-
服务器:阿里云ECS
-
配置:2核 (vCPU) 2 GiB
-
系统:Ubuntu 22.04 LTS
-
Web服务器:Nginx
-
目标域名:
cmd.delu7.cn(与现有主站7d.delu7.cn共存于同服务器)
三、 核心部署步骤与要点
以下为本次部署的关键流程与决策点总结:
-
项目获取与准备
-
- 准备:创建网站目录
mkdir -p /app/xxx/xx/ cd /app/xxx/xx-
获取方式:从GitHub仓库克隆源码到创建的网站目录下。
-
# 执行浅层克隆,--depth 1 表示只克隆最近1次提交的历史git clone --depth 1 --no-single-branch https://github.com/jaywcjlove/linux-command.git . -
目录结构:项目构建后,核心网站文件index.html位于
dist/目录下。(dist (distribution) 目录通常是构建过程完成后存放最终成品文件的地方) -
##1.安装 Node.js 和 npm # 下载并执行 NodeSource 的安装脚本,这里我们安装 LTS 版本 curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - # 安装 Node.js (npm 会作为依赖一同安装 过程慢 要等等) sudo apt-get install -y nodejs ##2.验证安装 (能看到版本号(如 v20.x.x 和 10.x.x),说明安装成功。) node -v npm -v ##3.进入项目目录并安装 npm 依赖 npm install ##4.执行构建命令 npm run build ##5.检查构建结果(在当前目录查找index.html) find . -name "index.html" -type f
-
- 准备:创建网站目录
-
Nginx 站点配置
-
核心挑战:实现在同一台服务器的80端口上,通过不同域名(
7d.delu7.cn与cmd.delu7.cn)访问两个独立的网站。 -
解决方案:采用 Nginx 基于域名的虚拟主机 配置。
-
为
cmd.delu7.cn创建独立的配置文件。 -
关键配置项:
-
-
-
HTTPS 证书迁移与自动化
-
背景:主站已使用阿里云免费SSL证书。为追求部署和维护的完全自动化,将两个站点均迁移至 Let‘s Encrypt 证书,并使用 Certbot 工具管理。
-
操作:
-
效果:Certbot 自动完成证书申请、修改Nginx配置、设置HTTP到HTTPS的重定向,并配置自动续期任务,彻底免去手动更新证书的烦恼。
-
-
依赖安装与安全修复
-
项目包含
package.json,需要npm install安装依赖以生成数据文件。 -
遇到问题:安装过程中,
sqlite3等依赖存在已知安全漏洞。 -
解决:通过
npm audit fix --force命令强制升级有漏洞的依赖包至安全版本,确保生产环境安全。
-
四、 关键经验总结
-
“一机多站”:通过Nginx的
server_name指令,可以轻松在同一IP和端口上托管多个网站,是基础而重要的运维技能。 -
证书管理策略:
-
阿里云证书:有效期90天,适合对稳定性要求高、变更不频繁的核心业务,但需手动续期部署。
-
Certbot (Let's Encrypt):有效期90天,支持全自动续期,适合追求自动化、惧于证书过期的所有场景。两者可在同一服务器共存。
-
-
配置分离原则:
7d.conf和cmd.conf保持独立是最佳实践。这使站点的维护、调试和更新互不干扰,逻辑清晰。 -
安全前置:在部署过程中同步处理NPM包的安全漏洞(
npm audit)、配置Nginx安全响应头、检查文件权限,是构建安全线上服务的重要环节。
五、 最终成果
-
博客主站:
https://7d.delu7.cn(WordPress动态站点) -
Linux命令查询站:
https://cmd.delu7.cn(静态站点) -
两站均运行于标准HTTPS(443端口),并实现HTTP自动跳转。
-
SSL证书实现全自动续期,无需人工干预。
-
服务器资源得到有效利用,架构清晰,便于后续维护与扩展。
此项目成功将一个实用的Linux学习工具部署上线,并为管理多个Web应用提供了标准的Nginx配置范式。
完整搭建过程及处理报错见笔记
- THE END -
最后修改:2026年2月27日
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:https://7d.delu7.cn/66/.html
共有 0 条评论