Linux 安裝、卸載Nginx詳細教程
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]:
