程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> Nginx服務器之基礎學習,nginx服務器基礎

Nginx服務器之基礎學習,nginx服務器基礎

編輯:JAVA綜合教程

Nginx服務器之基礎學習,nginx服務器基礎


 

一、Nginx介紹

nginx:Nginx是一種軟件服務器(輕量級),故它最主要的功能就是可以與服務器硬件結合,我們的應用程序可以放在nginx服務器上進行發布,已達到讓網民浏覽的效果。除此自外,Nginx是一種高性能的Http和反向代理服務器,同時也是一個代理郵件服務器。也就是說nginx可以發布網站,也可以實現負載均衡的功能,還可以作為郵件服務器實現收發郵件的功能。Nginx支持處理百萬級的TCP連接,10以上的並發連接,具有跨平台性。

負載均衡(Load Balance):負載均衡建立在現有網絡結構之上,它提供了一種廉價有效透明的方法擴展網絡設備和服務器的帶寬、增加吞吐量、加強網絡數據 處理能力、提高網絡的靈活性和可用性。負載均衡有兩方面的含義:首先,大量的並發訪問或數據流量分擔到多台節點設備上分別處理,減少用戶等待響應的時間;其次,單個重負載的運算分擔到多台節 點設備上做並行處理,每個節點設備處理結束後,將結果匯總,返回給用戶,系統處理能力得到大幅度提高。

Nginx在 Linux中的效率較window高。

缺點:rewrite功能不夠強大,沒有Apache模塊多。

Rewrite是一種服務器的重寫技術,它可以使得服務器可以支持 URL 重寫,是一種最新流行的服務器技術。它還可以實現限制特定IP訪問網站的功能。

二、Nginx在Centos下的安裝

1、下載nginx-1.8.1.tar.gz
2、解壓 tar -zxvf nginx-1.8.1.tar.gz
3、進入nginx-1.8.1 目錄下 然後./configure 會出現錯誤 ./configure: error: C compiler cc is not found
   這是因為缺少一個 關於 gc++庫
4、安裝這個庫文件 
    (a)、進入root權限
    (b)、安裝gc++庫  yum -y install gcc gcc-c++ autoconf automake
    (c)、出現Complete!表示安裝成功
5、再次進入  nginx-1.8.1目錄下執行 ./configure    提示 ./configure: error: the HTTP rewrite module requires the PCRE library.  (缺少PCRE library這個庫文件)
6、安裝PCRE library庫  進入root權限  執行 yum -y install pcre pcre-devel  出現Complete!表示安裝成功
7、再次進入  nginx-1.8.1目錄下執行 ./configure   提示 ./configure: error: the HTTP gzip module requires the zlib library.(缺少zlib library庫)
8、安裝zlib library庫  進入root權限 執行 yum -y install zlib zlib-devel   出現Complete!表示安裝成功
9、再次進入  nginx-1.8.1目錄下執行 ./configure   出現下圖所示表示安裝成功

 


10、執行命令 make   出現 make[1]: Leaving directory `/webserver/nginx-1.8.1' 表示make完成了
11、執行命令 make install 出現  make[1]: Leaving directory `/webserver/nginx-1.8.1' 表示nginx安裝完成
12、查看是否搭建成功 進入 usr/local 目錄下查看是否有nginx目錄 存在就表示安裝成功。

二、nginx下各個目錄的作用

 

conf: nginx 的配置信息
html: 網頁程序
logs:日志
sbin:nginx的應用程序,比如 啟動程序就在這裡面

三、nginx的基本操作

1、nginx的啟動:可執行文件路徑+ -c +配置文件全路徑(nginx.conf)
[root@iZ28b4kreuaZ sbin]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
2、nginx的停止
(a)、從容停止給與停止緩沖時間
     通過殺死進程停止   kill -QUIT + 主進程號
     查看進程:ps -ef|grep nginx
     從容停止:kill -QUIT 2072
(b)、強制停止 不管nginx能否停止就強行停止它
        pkill -9 nginx
(c)、快速停止
  kill -TERM +主進程號  kill -TERM 2132
3、重啟
   方法一、(a)、驗證配置文件是否正確
          方式一、進入可執行文件目錄(sbin)下 執行 ./nginx -t
           方式二、/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf 
      (b)、進入可執行文件目錄(sbin)下 ./nginx -s reload
    方法二、kill -HUP +主進程號  例:kill -HUP 2255  
4、關閉工作進程
   如何關閉 worker process 進程
   kill -WINCH +工作進程號
5、Nginx的平滑升級
   (1)升級就是升級nginx版本
         平滑升級:在升級時不會停掉在運行著的進程,這些進程會繼續處理已接收的請求,但不會再接受新的請求,等這些老進程在處理完還在處理的請求後,就停止。此平滑升級的過程中,新開的進程會被處理。
         強制升級:停止服務器,進行升級,這樣在運行中的進程就被影響了。
    (2) 如果平滑升級
         (a)、查看當前版本  sbin目錄下 執行 ./nginx -V
         (b)、將要升級後的版本下載到本地 nginx-1.9.2.tar.gz  解壓後 進入nginx-1.9.2目錄下執行 ./configure  再執行 make (千萬不要再執行再 make install)
         (c)、將nginx-1.9.2/objs/目錄下的 可執行文件(nginx) 復制到 /usr/local/nginx/sbin/目錄下(在復制前將老版本的ngin文件備份  例如:cp nginx nginx.old; nginx.old就是備份的文件)。
         (d)、在/nginx-1.9.2/ 目錄下執行復制 cp -rfp objs/nginx /usr/local/nginx/sbin
         (e)、刪除升級版本的文件 nginx-1.9.2 和 nginx-1.9.2.tar.gz
6、觀察進程變化
   在平滑升級中可以通過執行命令 ps -ef|grep nginx 觀察進程變化。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved