Linux 安装、卸载Nginx详细教程

1,690 阅读4分钟

Linux版本的Nginx推荐使用源代码安装。

Nginx安装

1. 环境准备

为了编译Nginx源代码,我们需要标准的GCC编译器。GCC的全称为GNUCompiler Collection,其由GNU开发,并以GPL及LGPL许可证发行,是自由的类UNIX及苹果电脑Mac OS X操作系统的标准编译器。因为GCC原本只能处理C语言,所以原名为GNU C语言编译器,后来得到快速扩展,可处理C++、Fortran、Pascal、Objective-C、Java以及Ada等其他语言。

除此之外,我们还需要Automake工具,以完成自动创建Makefile的工作。

由于Nginx的一些模块还需要依赖其他第三方库,通常有pcre库(支持rewrite模块)、zlib库(支持gzip模块)和openssl库(支持ssl模块)等。所以在编译Nginx源代码前还需要安装这些这些库。

#gcc安装
yum -y install gcc-c++
#pcre安装
yum  -y install  pcre pcre-devel
#zlib安装
yum -y install zlib zlib-devel
#OpenSSL安装
yum -y install openssl openssl-devel

前面3个就不说了,很多软件都会依赖到的包。需要安装OpenSSL是因为后期nginx可能需要配置https,因此最好提前准备好。

在进行上面的安装之前,最好使用下面的命令看下这些软件包是否已经安装过了。

yum list installed | grep ***

到此安装环境就准备好了。

下载地址:Nginx官网地址

下载后将 nginx 包上传至服务器中并解压,进入解压后的nginx目录中。

2. 源代码编译

Nginx的编译安装很简单,在Linux下建议下载tar包进行安装。

#解压tar包
tar -zxvf nginx-1.20.1.tar.gz 

#进入解压后的目录
#配置安装路径等其他配置,默认安装目录是/usr/local/nginx
./configure
#执行成功后会多出一个Makefile文件

#编译安装nginx
make 
make install

#查看版本
./nginx -v

至此,Nginx的安装就已经结束了。其实在上面的configure命令执行时我们是可以配置很多参数的,上面的安装中我们全部使用的是Nginx的默认配置。

3. 启动nginx

#在cd /usr/local/nginx/sbin 目录下执行
./nginx  #启动nginx

访问服务器ip,显示nginx的欢迎页说明正常启动

常用命令

./nginx -t # 验证配置文件是否能正常启动
./nginx #启动nginx
./nginx -s quit #正常停止
./nginx -s stop #快速停止
./nginx -s reload #重新加载
./nginx -v #查看版本信息

Nginx卸载

1.首先输入命令 ps -ef | grep nginx检查一下nginx服务是否在运行。

[root@zhaoym /]# ps -ef |grep nginx
root        7514       1  0 10:00 ?        00:00:00 nginx: master process ./nginx
root        7602    7514  0 10:12 ?        00:00:00 nginx: worker process
root        8144    2354  0 18:07 pts/0    00:00:00 grep --color=auto nginx

2.停止Nginx服务

[root@zhaoym /]# /usr/local/nginx/sbin/nginx -s stop
[root@zhaoym /]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1023/sshd           
tcp        0      0 0.0.0.0:5355            0.0.0.0:*               LISTEN      979/systemd-resolve 
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      7514/nginx: master  
tcp6       0      0 :::5355                 :::*                    LISTEN      979/systemd-resolve 
tcp6       0      0 :::21      

3.查找、删除Nginx相关文件

  • 查看Nginx相关文件:whereis nginx

[root@zhaoym /]# whereis nginx
nginx: /usr/lib64/nginx /usr/local/nginx /usr/share/nginx
  • find查找相关文件
[root@zhaoym /]# find / -name nginx
/var/lib/nginx
/var/log/nginx
/usr/lib64/nginx
/usr/share/nginx
/usr/local/nginx
/usr/local/nginx/sbin/nginx
  • 依次删除find查找到的所有目录:rm -rf /usr/local/nginx/sbin/nginx
rm -rf /usr/local/nginx/sbin/nginx

4.再使用yum清理

[root@localhost /]# yum remove nginx
依赖关系解决

======================================================================================================
 Package                              架构            版本                       源              大小
======================================================================================================
正在删除:
 nginx                                x86_64          1:1.12.2-3.el7             @epel          1.5 M
为依赖而移除:
 nginx-all-modules                    noarch          1:1.12.2-3.el7             @epel          0.0  
 nginx-mod-http-geoip                 x86_64          1:1.12.2-3.el7             @epel           21 k
 nginx-mod-http-image-filter          x86_64          1:1.12.2-3.el7             @epel           24 k
 nginx-mod-http-perl                  x86_64          1:1.12.2-3.el7             @epel           54 k
 nginx-mod-http-xslt-filter           x86_64          1:1.12.2-3.el7             @epel           24 k
 nginx-mod-mail                       x86_64          1:1.12.2-3.el7             @epel           99 k
 nginx-mod-stream                     x86_64          1:1.12.2-3.el7             @epel          157 k

事务概要
======================================================================================================
移除  1 软件包 (+7 依赖软件包)

安装大小:1.9 M
是否继续?[y/N]: