环境:centos7.9
下面将展示通过rpm方式安装Nginx
1.官方下载Nginx rpm包
下载地址 http://nginx.org/packages/
下载版本根据操作系统版本进行选择,本次操作系统是centos7.9 - 64位系统,所以对应的下载路径是:
http://nginx.org/packages/centos/7/x86_64/RPMS/
当前最新版本是1.25.1,稳定版本是1.24.0,生产环境尽量选择最近稳定版,于是选择1.24.0,即:
nginx-1.24.0-1.el7.ngx.x86_64.rpm
完整链接:http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.24.0-1.el7.ngx.x86_64.rpm
2.上传到服务器
随便找个位置放,本次是放在 /home/downfile
将rpm包上传到这个位置之后,进入该位置:
cd /home/downfile
rpm -ivh nginx-1.24.0-1.el7.ngx.x86_64.rpm
离线环境下,安装总会缺点啥,这次也不会例外,报错:
libpcre2-8.so.0()(64bit) is needed by nginx-1.24.0
大概就是服务器少了依赖libpcre2-8.so.0
刚好在另外一台服务器找到了这个文件,在 /usr/lib64/ 下
下载了那台服务器的 libpcre2-8.so.0.5.0
然后上传放到 /usr/lib64 下面,然后创建一个软链接给 libpcre2-8.so.0
ln -s libpcre2-8.so.0.5.0 libpcre2-8.so.0
已将该文件上传,有需要的可以下载(0积分):
https://download.csdn.net/download/geol200709/88478388
此时依赖已经有了,再次执行安装,发现仍然报这个错,一番搜索后,通过加参数解决:
rpm -ivh nginx-1.24.0-1.el7.ngx.x86_64.rpm --nodeps --force
加上那两个参数,就是安装时不再分析包之间的依赖关系而直接安装
3.验证
此时安装成功了
安装位置: /etc/nginx
另外创建几个目录:
/usr/share/nginx/html ,这个是放web的地方,可以在Nginx配置里面修改,可以按照实际情况换个位置
/var/log/nginx,这个是放日志的地方,会产生access.log 和error.log 两个日志文件,在nginx.conf文件里面也可以修改日志位置
下面验证是否安装成功:
# 查看安装情况
rpm -qa | grep nginx
# 查看版本
nginx -v
修改nginx.conf 以及 conf.d 下的配置文件之后,这时就可以启动 nginx 了
先校验配置文件:
nginx -t
校验通过后就可以启动了。
首次启动,不建议直接使用命令 nginx,推荐使用systemctl(为了开机自启动):
# 启动 nginx
systemctl start nginx
# 设置开启自启动
systemctl enable nginx
# 查看启动状态
systemctl status nginx
pid 文件在 /var/run/nginx.pid,nginx.conf 的pid路径保留默认不要修改
nginx服务文件:
/usr/lib/systemd/system/nginx.service
之后修改了配置文件,则一样先验证后重启
nginx -t
nginx -s reload
4.总结
本次安装只遇到一个缺少依赖的问题,暂未遇到其他,以后如遇到再做补充。
另外,如有条件,离线部署还是推荐docker部署,减少很多部署问题
如果 nginx 升级,则跟以上同样的步骤。注意先做好配置文件(nginx.conf及conf.d)备份