这篇文章主要就是针对内网部署,不能通过上网的方式下载某些安装软件的依赖包,全程全是通过下载Nginx相关的包,上传到服务器上,最终在服务器上进行解压安装操作。
下载相关依赖文件
我已将安装过程中会用到的所有文件打包,直接下载即可,然后按照文章进行操作。各依赖版本均已经过实操,无版本冲突。
- Nginx-1.20.2版本
- gcc、g++环境配置
- openssl-1.1.0h
- pcre-8.45
- zlib-1.2.13
- perl-5.30.1
开始安装
1. 将下载的资源上传到服务器
可能你下载的资源是zip压缩包,如果你的服务器是一片白板,那大概率没有uzip命令来解压,可以先本地解压,把这六个.tar.gz文件解压出来后,再分别上传到服务器。系统自带的tar命令可以解压这种压缩包,就不用单独安装了。
当然你可以再离线安装个uzip命令,可以自己找教程。
接下来默认所有文件都解压到了根目录的/data
文件夹中,没有该文件夹的话就新建。其实放在哪个文件夹都可以,后面会有一些涉及到路径的命令,记得把/data
路径换成你自己设置的路径
2. 检查GCC、G++是否安装
# 检查GCC环境是否安装
gcc --version
# 检查G++环境是否安装
g++ --version
先检查有没有gcc、g++环境,白板服务器大概率没有,如果已经有gcc、g++环境了,这一步就可以跳过了。
接下来开始安装gcc、g++,将gcc、g++离线安装包.tar.gz
解压,先安装gcc,再安装g++。分别执行两个文件夹下的install.sh。
执行命令 sh install.sh 它其实就是去执行rpm -ivh 等全部需要安装命令,这样就可以不用手动去执行了。如果执行上述命令出现了如下报错问题(一般都是版本问题) ,可以手动执行。
# 手动执行
例:rpm -ivh gcc-4.8.5-4.el7.x86_64.rpm
同一个目录下批量安装rpm文件:rpm -ivh *rpm
如果在执行上述命令的时候,报错版本冲突问题,请在命令上追加 --replacefiles 参数。
# 版本冲突执行
# 例如:
rpm -ivh gcc-4.8.5-4.el7.x86_64.rpm --replacefiles
如果有如下报错
# 例如
error: Failed dependencies:
cpp = 4.8.5-4.el7 is needed by gcc-4.8.5-4.el7.x86_64
libgomp = 4.8.5-4.el7 is needed by gcc-4.8.5-4.el7.x86_64 gcc < 8
这种就是依赖问题,很复杂,此时手动强制安装即可。
# 强制安装需要安装的rpm文件 参数 --force(强制) --nodeps(不查找依赖关系)
# 例如:
rpm -ivh gcc-4.8.5-4.el7.x86_64.rpm --force --nodeps
3. 安装Nginx依赖
安装pcre
# 安装pcre
# 可根据实际需要进行选择相关安装路径
tar -zxvf pcre-8.45.tar.gz
cd pcre-8.45/
./configure
make
make install
安装zlib
# 安装zlib
# 可根据实际需要进行选择相关安装路径
tar -zxvf zlib-1.2.13.tar.gz
cd zlib-1.2.13/
./configure
make
make install
安装openssl
# 安装openssl
# 可根据实际需要进行选择相关安装路径
tar -zxvf openssl-1.1.0h.tar.gz
cd openssl-1.1.0h/
./config
make
make install
安装perl 5
在安装上述三个nginx依赖时,可能会遇到报错
Operating system: x86_64-whatever-linux2 You need Perl 5.
意思是目前服务器上的perl版本过低,需要安装perl5.
如果没有该报错则不需要装
# 安装openssl
# 可根据实际需要进行选择相关安装路径
tar -xzf perl-5.30.1.tar.gz
cd perl-5.30.1
./Configure -des -Dprefix=$HOME/localperl
make
make test
make install
4. 安装nginx
- –prefix=/data/nginx:指定安装目录为/data/nginx。在编译和安装完成后,软件将被安装到该目录下.
- –with-http_stub_status_module:启用 HTTP Stub Status 模块。该模块是 Nginx 的一个内置模块,用于获取 Nginx 服务器的状态信息。
- –with-http_ssl_module:启用 HTTP SSL 模块。该模块使得 Nginx 支持通过 HTTPS 提供安全的加密传输。
tar -zxvf nginx-1.20.2.tar.gz
cd nginx-1.20.2/
# 指定pcre、zlib、openssl的解压路径
./configure --prefix=/data/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/data/pcre/pcre-8.45 --with-zlib=/data/zlib/zlib-1.2.13 --with-openssl=/data/openssl/openssl-1.1.0h
make
make install
5. 测试nginx是否安装成功
执行/data/nginx/sbin/nginx
,就是在/data/nginx/sbin
目录下的nginx命令
查看nginx运行状态,有对应的进程的话说明启动成功啦
# 列出Nginx的相关进程
ps –ef | grep nginx
一些常用nginx命令
# 停止Nginx
/data/nginx/sbin/nginx -s stop
# 重载配置文件
/data/nginx/sbin/nginx -s reload