本章重点介绍nginx的安装部署:
- YUM安装部署
- 源码安装部署
登录http://nginx.org官网:
点击右侧的download:
主线版本:也叫开发版本,目前最新但是还没有经过大量测试的版本。
稳定版本:稳定版通常是经过大量测试的,相对比较稳定的版本,企业中我们也会使用稳定版。
历史版本:通常是往期的稳定版本。
yum安装
配置yum仓库:
1、点击 当前页最下方的stable and mainline:
2、然后选择RHEL/CentOS:
3、复制配置文件,创建nginx.repo文件:
vim /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
4、现在就可以直接安装了,默认情况是安装稳定版的:
安装稳定版本:
[root@localhost ~]# yum install nginx -y
[root@localhost ~]# nginx -v
nginx version: nginx/1.16.0
如果想安装主线版本,可以切换repo源:
yum install yum-utils -y
yum-config-manager --enable nginx-mainline
yum install nginx -y
#这个时候nginx 1.16的版本会直接被升级。
[root@localhost ~]# nginx -v
nginx version: nginx/1.17.1
源码编译安装
1、选择想要下载的版本,直接单击右键复制地址下载:
wget http://nginx.org/download/nginx-1.16.0.tar.gz
2、解压之后编译、安装:
先安装编译器以及依赖:
yum install gcc gc gcc-c++ pcre pcre-devel -y
tar xf nginx-1.16.0.tar.gz
cd nginx-1.16.0
3、预编译:
预编译主要是用来检查系统环境是否满足安装软件包的条件,并生成Makefile文件,该文件为编译、安装、升级nginx指明了相应参数。
./configure -h 可以查看预编译参数
--prefix 指定nginx编译安装的目录;
--user=*** 指定nginx的属主
--group=*** 指定nginx的属主与属组
--with-*** 指定编译某模块
--without-** 指定不编译某模块
--add-module 编译第三方模块
开始预编译:
./configure --prefix=/usr/local/nginx
[root@www nginx-1.16.0]# cat Makefile
default: build
clean:
rm -rf Makefile objs
build:
$(MAKE) -f objs/Makefile
install:
$(MAKE) -f objs/Makefile install
modules:
$(MAKE) -f objs/Makefile modules
upgrade:
/usr/local/nginx/sbin/nginx -t
kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`
sleep 1
test -f /usr/local/nginx/logs/nginx.pid.oldbin
kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`
make clean : 重新预编译时,通常执行这条命令删除上次的编译文件
make build : 编译,默认参数,可省略build参数
make install : 安装
make modules : 编译模块
make upgrade : 在线升级
4、编译安装
make && make install
5、查看版本与测试访问
/usr/local/nginx/sbin/nginx -v
nginx version: nginx/1.16.0
启动:
/usr/local/nginx/sbin/nginx
检查端口是否启动:
[root@localhost ~]# netstat -ntlp|grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 6853/nginx: master
检查进程:
[root@localhost ~]# ps -ef|grep nginx
root 6853 1 0 20:27 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx
nobody 7839 6853 0 21:35 ? 00:00:00 nginx: worker process
访问当前服务器ip,出现这个页面表示nginx WEB服务已经搭建成功!