在安装Nginx之前,需要安装这几个东西
- 安装编译环境:
- 安装make:yum -y install autoconf automake make #一般Centos系统都自带,可以用make -help 看一下
- 安装g++: yum -y install gcc gcc-c++
-
- 安装Nginx依赖库:
- 安装pcre:yum -y install pcre pcre-devel
- 安装zib:yum -y install zlib zlib-devel
- 安装openssl:yum install -y openssl openssl-devel
make和g++是编译环境,在linux下安装软件,一般都需要这两个东西
其他的都是Nginx运行需要的依赖库
一般 centos 会自带 make
下载地址:http://nginx.org/en/download.html
http://nginx.org/download/nginx-1.18.0.tar.gz
下载Nginx的Linux版本
下载完成后传到centos虚拟机里的/usr/local/src目录
执行:tar -zxvf nginx-1.18.0.tar.gz,结果
进入nginx-1.18.0目录
在当前路径下执行这句命令
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
这是对Nginx进行一些配置,看表格
--prefix=/usr/local/nginx | 指定Nginx安装目录为/usr/local/nginx 可以修改为自己的路径 |
--with-http_stub_status_module | 开启Nginx的监控模块 |
--with-http_ssl_module | 开启Nginx的https模块 |
最后一步,在当前目录,执行:make && make install
安装完成后,可以用whereis nginx命令来查看Nginx安装的地址。
解释一下:
conf | 配置文件 |
html | 静态网页文件 |
logs | 日志文件 |
sbin | 二进制程序,是Nginx核心的可执行文件 |
跟安装JDK,配置JAVA_HOME一样
[root@localhost nginx]# vi /etc/profile
在最下面加上
export PATH=$PATH:/usr/local/nginx/sbin
保存后,使用source命令使配置生效
[root@localhost nginx]# source /etc/profile
直接输入nginx就可以启动了
使用 ps -ef | grep nginx ,可以查看是否启动,启动成功后应该是这样子的
在浏览器中也可以访问
如果浏览器不显示:
使用这个命令 firewall-cmd --state, 查看一下Centos虚拟机的防火墙是不是正在运行
如果是运行状态
使用下面命令关掉防火墙就行了
- # 关闭防火墙
- [root@localhost nginx-1.18.0]# systemctl stop firewalld.service
- # 禁止防火墙开机启动
- [root@localhost nginx-1.18.0]# systemctl disable firewalld.service
- Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
- Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
- 查看Nginx版本信息,注意这是小写的v
- [root@localhost nginx]# nginx -v
- nginx version: nginx/1.18.0
-
- 查看Nginx版本和开启的模块信息,这是大写的V
- [root@localhost conf]# nginx -V
- nginx version: nginx/1.18.0
- built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC)
- built with OpenSSL 1.0.2k-fips 26 Jan 2017
- TLS SNI support enabled
- configure arguments: --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
-
- 查看Nginx帮助信息
- [root@localhost nginx]# nginx -h
启动Nginx有2种方式
- 启动Nginx
- [root@localhost nginx]# nginx
-
- 使用指定配置文件,启动Nginx,当不想使用默认的配置文件时候,可以用这个命令
- [root@localhost nginx]# nginx -c /usr/local/nginx/conf/nginx.conf
- 可以使用下面这个命令,看是否启动成功
-
- 查看Nginx进程,可以判断是否启动成功,同时也可以看到nginx的进程号
- [root@localhost nginx]# ps -ef | grep nginx
停止Nginx也有2种方式
- 暴力停止Nginx
- [root@localhost nginx]# nginx -s stop
-
- 优雅停止Nginx
- [root@localhost nginx]# nginx -s quit
nginx -s quit Nginx在停止前,会完成已经接受的请求,推荐使用
nginx -s stop Nginx快速停止,不管有没有正在处理的请求
启动Nginx的时候需要载配置文件,没有指定时,使用默认的配置文件
如果修改配置文件,先停止、再启动Nginx,比较麻烦
使用下面命令,不用停止Nginx就可以让修改后的配置生效。
- 重新加载配置文件,不用停止Nginx
- [root@localhost nginx]# nginx -s reload
Nginx的配置很复杂的且容易出错,所以修改配置后,一般会使用下面的命令校验是否合法
- 修改配置文件后先用这个命令校验配置是否合法
- [root@localhost nginx]# nginx -t
-
- [root@localhost nginx]# nginx -s reload