环境介绍
- CentOS Version:7.9 2009
- Nginx Version:1.22.0
- Mobaxterm:最新版本即可
安装
1、下载Nginx
我们选择Nginx的版本,并下载。当前Nginx使用比较多的有4种发行版,分别是:
- Nginx
- Nginx Plus
- OpenResty
- Tengine
Nginx是开源的版本,也是其他发行版本的基础版。
Nginx Plus是在基础版本上增加了许多扩展,更加简化使用。
OpenResty是以lun语言在基础版本上扩展了大量的功能。
Tengine是以C语言在基础版本上扩展了很多的功能。
在版本的选择上,需要根据自己的用途来选择。例如,你只是想学习Nginx,就建议安装Nginx开源版本。如果是商业用户,则根据公司的需求去评估选择,如果对lun脚本比较了解,则可以使用OpenResty,如果对C语言比较擅长,则建议使用Tengine。
另外,如果想安装OpenResty,则可以访问OpenResty安装。
我这里直接以Nginx开源版为例,首先去官网下载Nginx,并上传至服务器中。注意,一定选则Stable version版本,其他版本要么不稳定,要么已经过时。
2、解压tar包
我这里上传到了/usr/local/src目录后,直接使用tar解压到默认目录即可。
[root@localhost src]# tar xvf nginx-1.22.0.tar.gz
# 进入解压的目录
[root@localhost src]# cd nginx-1.22.0
3、安装Nginx所需的依赖
为避免Nginx编译因缺少依赖包报错,我们安装所需的依赖,已经安装过,则会升级到最新版本。注意,这一步需要先配置yum源或服务器能够访问到外网。
[root@localhost nginx-1.22.0]# yum -y install gcc pcre pcre-devel zlib
4、编译
执行编译,编译完成后会在同级目录,也就是解压后的目录里,生成一个objs目录。
[root@localhost nginx-1.22.0]# ./configure
5、安装
在编译完成后,就需要执行make命令,通常情况下会先去执行make命令测试会不会报错,make验证没问题后,再执行make install,去真正安装Nginx。我这里为了方便,就直接一起执行了,生产环境建议先去make,make成功后,再执行make install。
[root@localhost nginx-1.22.0]# make && make install
6、启动Nginx
默认安装在/usr/local目录下,因此我们直接使用决对路径启动就行。
[root@localhost nginx-1.22.0]# /usr/local/nginx/sbin/nginx
7、测试Nginx
启动成功后,使用浏览器通过ip访问,出现如下页面,则说明安装成功。注意,本地电脑访问远程时,需要先关闭服务器的firewalld或开放80端口才能访问成功。
8、配置成系统服务和自启动
由于CentOS 7开始,使用systemd管理服务,我们就将Nginx配置为系统服务,使管理起来更加方便。配置完成后,就可以使用如下命令来管理Nginx
- systemctl stop nginx 停止nginx服务
- systemctl start nginx 启动nginx服务
- systemctl reload nginx 重加载nginx服务
- systemctl enable nginx 配置nginx跟随开机启动
新增nginx.service服务
[root@localhost nginx-1.22.0]# vim /usr/lib/systemd/system/nginx.service
在nginx.service服务中,新增以下内容。注意,PIDFile、ExecStartPre、ExecStart、ExecReload、ExecStop、ExecQuit这些参数必须根据自己安装的实际目录去填写。
[Unit]
Description=nginx - web server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecQuit=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
重加载系统服务
[root@localhost nginx-1.22.0]# systemctl daemon-reload
配置Nginx自启动
[root@localhost nginx-1.22.0]# systemctl enable nginx
9、重启测试
配置完系统服务后,就可以重启服务器了。
[root@localhost nginx-1.22.0]# reboot
重启后,再次查看Nginx的状态。
[root@localhost ~]# systemctl status nginx
如图所示,则表名Nginx自启动配置完成。
评论区