📂 第一步:准备安装包(在有网络的电脑上操作)
下载以下文件(可根据实际需求调整),并将它们上传到服务器的 /home/mca/ 目录下。
-
Nginx: 下载
.tar.gz压缩包。- 例如:
nginx-1.22.1.tar.gz
- 例如:
-
Nginx 依赖库(必须!因为离线且无权限):
pcre-8.45.tar.gz(用于解析正则表达式)zlib-1.2.13.tar.gz(用于 gzip 压缩)openssl-1.1.1w.tar.gz(用于 HTTPS)
🛠️ 第二步:登录服务器并创建目录结构
假设已经将上述 4 个文件上传到了 /home/mca/ 目录。
# 1. 创建必要的目录结构
cd /home/mca/
mkdir -p software # 用于存放安装包
mkdir -p app # 用于存放编译/解压后的程序
# 2. 将上传的安装包移动到 software 目录(如果还没在该目录下)
mv *.tar.gz software/
cd software
🌐 第三步:编译安装 Nginx(关键步骤)
由于是离线且无 root 权限,必须在 configure 阶段指定依赖库的源码路径和安装路径。
-
解压 Nginx 和依赖
cd /home/mca/software # 解压 Nginx tar -zxvf nginx-1.22.1.tar.gz # 解压依赖库(必须解压在 software 目录下,方便 Nginx 找到) tar -zxvf pcre-8.45.tar.gz tar -zxvf zlib-1.2.13.tar.gz tar -zxvf openssl-1.1.1w.tar.gz -
编译安装
-
进入 Nginx 源码目录:
cd nginx-1.22.1 -
执行配置命令(关键:
--prefix指定安装到有权限的目录):./configure \ --prefix=/home/mca/app/nginx \ --with-pcre=../pcre-8.45 \ --with-zlib=../zlib-1.2.13 \ --with-openssl=../openssl-1.1.1w \ --with-http_ssl_module -
如果上面命令报错,通常是因为缺少
gcc编译器。请确认gcc --version是否能运行(这需要管理员在离线环境下安装gccRPM 包,属于系统基础环境,不属于应用安装包)。 -
编译并安装:
make && make install
-
-
配置和启动 Nginx
-
进入安装目录的
sbin目录:cd /home/mca/app/nginx/sbin -
修改配置文件(如果需要):编辑
/home/mca/app/nginx/conf/nginx.conf,将listen 80;改为listen 8081;(或其他大于 1024 的端口,因为非 root 用户不能使用 1-1024 端口)。 -
启动:
./nginx -
重新加载配置(修改 conf 后):
./nginx -s reload
-
📌 总结与检查
-
目录结构:
/home/mca/software/:存放所有.tar.gz源文件。/home/mca/app/:存放解压/编译后的 Nginx。
-
权限:所有操作都在
mca用户下完成,无需sudo或root。 -
端口:Nginx 默认 80(需手动改配置大于 1024 的端口,因为非 root 用户不能使用 1-1024 端口)。同时确保服务器防火墙(如果有)放行这些端口。