1. 程式人生 > >CentOS7yum或原始碼包安裝Nginx的異同(有具體安裝過程)

CentOS7yum或原始碼包安裝Nginx的異同(有具體安裝過程)

在cent下安裝軟體的方式大多用yum或者原始碼安裝。yum安裝屬於線上安裝的方式,安裝簡單不易出錯;原始碼包安裝是先將Nginx的原始碼下載下來,在自己的系統裡編譯生成可執行檔案,然後執行,好處是:因為是在自己的系統上編譯的,更符合自己系統的效能,也就是說在自己的系統上執行Nginx服務效能效率更好。

安裝目錄不同

yum線上安裝會將Nginx安裝在不同的位置,可以通過命令:

rpm -ql nginx

來檢視安裝路徑,會顯示很多路徑:

➜  ~ rpm -ql nginx
/etc/logrotate.d/nginx
/etc/nginx
/etc/nginx/conf.d
/etc/nginx/conf.d/default.conf
/etc/nginx/conf.d/ssl.conf
/etc/nginx/conf.d/virtual.conf
/etc/nginx/fastcgi.conf
/etc/nginx/fastcgi.conf.default
/etc/nginx/fastcgi_params
/etc/nginx/fastcgi_params.default
/etc/nginx/koi-utf
/etc/nginx/koi-win
/etc/nginx/mime.types
/etc/nginx/mime.types.default
/etc/nginx/nginx.conf
/etc/nginx/nginx.conf.default
/etc/nginx/scgi_params
/etc/nginx/scgi_params.default
/etc/nginx/uwsgi_params
/etc/nginx/uwsgi_params.default
/etc/nginx/win-utf
/etc/rc.d/init.d/nginx
/etc/sysconfig/nginx
/usr/lib/perl5/vendor_perl/auto/nginx
/usr/lib/perl5/vendor_perl/auto/nginx/nginx.so
/usr/lib/perl5/vendor_perl/nginx.pm
/usr/sbin/nginx
/usr/share/doc/nginx-1.0.15
/usr/share/doc/nginx-1.0.15/CHANGES
/usr/share/doc/nginx-1.0.15/LICENSE
/usr/share/doc/nginx-1.0.15/README
/usr/share/man/man3/nginx.3pm.gz
/usr/share/man/man8/nginx.8.gz
/usr/share/nginx/html/404.html
/usr/share/nginx/html/50x.html
/usr/share/nginx/html/index.html
/usr/share/nginx/html/nginx-logo.png
/usr/share/nginx/html/poweredby.png
/usr/share/vim/vimfiles/ftdetect/nginx.vim
/usr/share/vim/vimfiles/indent/nginx.vim
/usr/share/vim/vimfiles/syntax/nginx.vim
/var/lib/nginx
/var/lib/nginx/tmp
/var/log/nginx

解除安裝的時候只能通過命令來解除安裝,因為手動刪除這些檔案有點不太實際,所以要通過命令:

rpm -e nginx

來解除安裝,如果因為依賴包的關係報錯,就嘗試用:

rpm -e --nodeps nginx

來強制解除安裝,忽略依賴問題。

而原始碼包安裝的檔案都在同一個目錄下,要解除安裝的時候將資料夾刪除就可以了,通常在 /usr/local/包名 目錄下。

啟動方式不同

yum安裝的Nginx可以通過service系統服務命令來開啟/關閉:

service nginx start #啟動 nginx 服務

service nginx stop #停止 nginx 服務

service nginx restart #重啟 nginx 服務

而原始碼包安裝的Nginx啟動的時候要在安裝目錄下的sbin目錄中啟動Nginx服務:

➜  ~ /usr/local/nginx/sbin/nginx           #啟動 nginx 服務
➜  ~ /usr/local/nginx/sbin/nginx -s stop   #停止 nginx 服務

或者直接進入目錄,執行 ./nginx 也可以開啟Nginx服務:

➜  ~ cd /usr/local/nginx/sbin 
➜  sbin ls
nginx
➜  sbin ./nginx           #啟動 nginx 服務
➜  sbin ./nginx -s stop   #停止 nginx 服務

yum安裝

使用 yum -y install nginx 進行安裝:

➜  ~ yum -y install nginx
已載入外掛:fastestmirror, security
設定安裝程序
Loading mirror speeds from cached hostfile
解決依賴關係
--> 執行事務檢查
---> Package nginx.i686 0:1.0.15-12.el6 will be 安裝
--> 完成依賴關係計算

依賴關係解決

========================================================================================================================================
 軟體包                        架構                         版本                                     倉庫                          大小
========================================================================================================================================
正在安裝:
 nginx                         i686                         1.0.15-12.el6                            epel                         410 k

事務概要
========================================================================================================================================
Install       1 Package(s)

總下載量:410 k
Installed size: 1.1 M
下載軟體包:
nginx-1.0.15-12.el6.i686.rpm                                                                                     | 410 kB     00:00     
執行 rpm_check_debug 
執行事務測試
事務測試成功
執行事務
Warning: RPMDB altered outside of yum.
  正在安裝   : nginx-1.0.15-12.el6.i686                                                                                             1/1 
  Verifying  : nginx-1.0.15-12.el6.i686                                                                                             1/1 

已安裝:
  nginx.i686 0:1.0.15-12.el6                                                                                                            

完畢!

啟動Nginx伺服器:

➜  ~ service nginx start
Starting nginx:                                            [  OK  ]

停止Nginx伺服器:

➜  ~ service nginx stop 
Stopping nginx:                                            [  OK  ]

重啟Nginx伺服器:

➜  ~ service nginx restart
Stopping nginx:                                            [  OK  ]
Starting nginx:                                            [  OK  ]

啟動後,在瀏覽器輸入伺服器的IP地址就能看到Nginx服務首頁了!

原始碼包安裝Nginx

首先要進行安裝編譯需要的依賴包(我用的CentOS 6.7):

yum -y install gcc gcc-c++ make libtool zlib zlib-devel openssl openssl-devel pcre pcre-devel

下載原始碼包到 /root 目錄下:

wget http://nginx.org/download/nginx-1.10.1.tar.gz

解壓縮:

tar -zxvf nginx-1.10.1.tar.gz

解壓縮後,進入 nginx-1.10.1 目錄下

➜  ~ ls
anaconda-ks.cfg  install.log  install.log.syslog  nginx-1.10.1  nginx-1.10.1.tar.gz 
➜  ~ cd nginx-1.10.1 

在目錄下執行配置和make命令:

➜  nginx-1.10.1 ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre

➜  nginx-1.10.1 make && make install

啟動 停止 Nginx服務:

➜  ~ /usr/local/webserver/nginx/sbin/nginx           #啟動 nginx 服務
➜  ~ /usr/local/webserver/nginx/sbin/nginx -s stop   #停止 nginx 服務