最新教程 | CentOS 7 内网环境 Nginx + ECharts 页面离线部署手册(RPM 安装方式)


📁 一、准备阶段(在联网电脑上完成)

1.1 下载 Nginx 官方 RPM 安装包

在联网电脑浏览器中访问 Nginx 官方稳定版本仓库:

🔗 地址:http://nginx.org/packages/centos/7/x86_64/

☁️云盘:https://www.123912.com/s/Mjh6jv-jqQVd?pwd=f8DJ# 提取码:f8DJ

下载以下文件:

  • nginx-1.26.1-2.el7.ngx.x86_64.rpm
  • pcre2-10.23-2.el7.x86_64.rpm

保存到一个文件夹中,例如 nginx_rpm/

1.2 准备 ECharts 页面文件

确保你已准备好如下网页结构:

复制代码
echarts-demo/
└── index.html

建议不依赖 CDN,全部静态 JS 文件放本地,适合纯离线。

1.3 获取 Nginx 依赖 RPM 包(用于离线环境)

在联网环境执行以下命令(需安装 yum-plugin-downloadonly):

bash 复制代码
yum install yum-plugin-downloadonly -y
mkdir nginx_deps
cd nginx_deps
yum install --downloadonly --downloaddir=. \
    gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

nginx_deps/nginx_rpm/echarts-demo/ 打包带入内网。

目录结构示例:

复制代码
nginx_offline_package/
├── nginx_rpm/
│   └── nginx-1.24.0-1.el7.ngx.x86_64.rpm
│   └── pcre2-10.23-2.el7.x86_64.rpm
├── nginx_deps/
│   └── *.rpm
├── echarts-demo/
│   └── index.html
└── deploy.sh

🛠️ 二、手动安装部署(CentOS 7 内网服务器)

2.1 安装依赖包

bash 复制代码
cd nginx_offline_package/nginx_deps
sudo yum localinstall -y *.rpm

2.2 安装 Nginx RPM 包

bash 复制代码
cd ../nginx_rpm
sudo yum localinstall -y nginx-*.rpm

2.3 部署 ECharts 页面

bash 复制代码
sudo mkdir -p /usr/share/nginx/html/echarts-demo
sudo cp -r ../echarts-demo/* /usr/share/nginx/html/echarts-demo/

2.4 启动 Nginx

bash 复制代码
sudo systemctl start nginx
sudo systemctl enable nginx

⚙️ 三、自动化部署脚本

将以下脚本保存为 deploy.sh,与其他目录放在 nginx_offline_package/ 内。

bash 复制代码
#!/bin/bash

set -e

NGINX_RPM_DIR="nginx_rpm"
NGINX_DEPS_DIR="nginx_deps"
ECHAR_DIR="echarts-demo"
WEB_DIR="/usr/share/nginx/html/echarts-demo"

echo "[1/4] 安装依赖包..."
cd $NGINX_DEPS_DIR
yum localinstall -y *.rpm &>/dev/null
cd ..

echo "[2/4] 安装 Nginx RPM..."
yum localinstall -y $NGINX_RPM_DIR/nginx-*.rpm &>/dev/null

echo "[3/4] 拷贝页面..."
mkdir -p $WEB_DIR
cp -r $ECHAR_DIR/* $WEB_DIR/

echo "[4/4] 启动 Nginx..."
systemctl start nginx
systemctl enable nginx

echo "✅ 部署完成!请访问 http://<你的内网IP>/echarts-demo/"

使用方法:

bash 复制代码
chmod +x deploy.sh
sudo ./deploy.sh

🔒 防火墙建议(如无法访问)

bash 复制代码
sudo systemctl stop firewalld
sudo systemctl disable firewalld

✅ 页面访问

使用浏览器访问:

复制代码
http://<服务器IP>/echarts-demo/