安装教程
官网下载
MainLine version:最新版本
Stable version:稳定版本
Legacy version:老版本
这里我们选择Stable version下的第二个。
下载方式有两种:
- 鼠标右键复制链接地址,然后在centos里面输入命令wget https://nginx.org/download/nginx-1.18.0.tar.gz。后面就是刚复制的链接
- 先下载到本地,然后使用rz命令上传至服务器
这里我使用的是第一种方式下载:
安装其它辅助软件
安装:gcc、pcre、openssl、zlib
gcc安装命令:yum install gcc-c++
pcre安装命令:yum install -y pcre pcre-devel
openssl安装命令:yum install -y openssl openssl-devel
zlib安装命令:yum install -y zlib zlib-devel
源码安装Nginx
解压
# 先解压
[root@VM_0_9_centos: apps]#tar xvf nginx-1.18.0.tar.gz
# 进入nginx解压目录
[root@VM_0_9_centos: apps]#cd nginx-1.18.0/
编译安装
Nginx编译时的参数
使用源码编译安装的好处在于,我们可以根据自己的需求,启用或关闭Nginx某些功能。
Nginx参数讲解
编译安装
# 运行 configure脚本,生成Makefile文件(如果执行后发现prefix路径有错,可以删除Makefile 再次执行configure脚本)这里不能将prefix指定到源码目录(/apps/nginx-1.18.0),不然在执行make install 会报错
## --with-http_stub_status_module:支持nginx状态查询
## --with-http_ssl_module: 支持https .
## --with-pcre:为了支持rewrite重写功能,必须制定pcre
[root@VM_0_9_centos: nginx-1.18.0]#./configure --prefix=/apps/nginx --with-http_ssl_module --with-http_stub_status_module --with-pcre
# 编译安装 这里的-j2 是使用两颗CPU交叉编译。也可以直接make && make install 编译安装一步执行
[root@VM_0_9_centos: nginx-1.18.0]#make -j2
[root@VM_0_9_centos: nginx-1.18.0]#make install
注意:
安装时的参数 --prefix=/apps/nginx 值不要使用相对路径,因为后面可能会出现路径问题。
测试软件是否安装成功
# 启动、关闭、重置Nginx
##启动
[root@VM_0_9_centos: nginx-1.18.0]#/apps/nginx/sbin/nginx
##检查启动成功,或者浏览器输入IP访问
[root@VM_0_9_centos: nginx]#curl -s http://localhost|grep nginx.com
<a href="http://nginx.com/">nginx.com</a>.</p>
##关闭
[root@VM_0_9_centos: nginx-1.18.0]#/apps/nginx/sbin/nginx -s stop
##重置
[root@VM_0_9_centos: nginx-1.18.0]#/apps/nginx/sbin/nginx -s reload
配置环境变量
# 修改配置文件
[root@VM_0_9_centos: nginx-1.18.0]#vim /etc/profile
# 将nginx添加到PATH变量中,然后保存退出
export PATH=$PATH:/apps/nginx/sbin
# 重载配置文件(source,.都行)
[root@VM_0_9_centos: nginx-1.18.0]#source /etc/profile
#就可以在任意位置输入nginx替代/apps/nginx/sbin/nginx
添加到系统任务,设置开机自动启动
# 添加到系统服务
[root@VM_0_9_centos: nginx-1.18.0]#cd /lib/systemd/system/
[root@VM_0_9_centos: system]#vim nginx.service
## 添加以下内容,注意路径,然后保存退出
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/apps/nginx/sbin/nginx
ExecReload=/apps/nginx/sbin/nginx reload
ExecStop=/apps/nginx/sbin/nginx quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
路径更换(’'是转义):
# 启动服务
[root@VM_0_9_centos: ~]#systemctl start nginx.service
# 查看服务状态
[root@VM_0_9_centos: ~]#systemctl status nginx.service
# 关闭服务
[root@VM_0_9_centos: ~]#systemctl stop nginx.service
# 设置开机自动启动
[root@VM_0_9_centos: ~]#systemctl enable nginx.service
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.
# 关闭开机自动启动
[root@VM_0_9_centos: ~]#systemctl disable nginx.service
Removed symlink /etc/systemd/system/multi-user.target.wants/nginx.service.