Nginx的安裝、常用命令、配置文件

在Linux系統中安裝Nginx

  • 進入Nginx官網下載Nginx的壓縮包

官網地址:http://nginx.org

  •  安裝Nginx所需的pcre依賴 
#第一步:聯網下載pcre壓縮文件依賴
wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz

#第二步:解壓壓縮文件
tar –xvf pcre-8.37.tar.gz

#第三步:進入pcre目錄,執行下面的命令
./configure

#第四步:在pcre目錄下執行下面的命令
make && make install

相關操作截圖如下:

注:進行第三步的時候可能會出現下面這個錯

解決方法:執行下面的命令

yum install -y gcc gcc-c++

第三步執行完出現如下結果纔是成功的:

  • 安裝Nginx所需的其他依賴(openssl 、zlib 、 gcc
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
  • 安裝Nginx
#第一步:把下載好的Nginx壓縮包上傳到Linux上

#第二步:解壓壓縮包
tar -xvf nginx-1.12.2.tar.gz

#第三步:進入Nginx目錄,執行下面的命令
./configure

#第四步:在Nginx目錄下執行下面的命令
make && make install

#第五步:進入/usr/local/nginx/sbin/nginx目錄
cd /usr/local/nginx/sbin/nginx

#第六步:啓動Nginx
./nginx

相關操作截圖如下:

  • 用瀏覽器訪問Nginx

在瀏覽器裏輸入Linux系統的IP地址,可看到如下圖所示的內容:

Nginx的常用命令

注:執行以下命令都要先進入到/usr/local/nginx/sbin目錄下

#查看Nginx的版本號
./nginx -v

#啓動Nginx
./nginx

#停止Nginx
./nginx	-s stop

#重新加載Nginx的配置文件
./nginx -s reload

#檢查Nginx的配置文件是否有誤
./nginx -t

Nginx的配置文件

Nginx安裝目錄下,其默認的配置文件都放在這個目錄的conf目錄下,而主配置文件nginx.conf也在其中,後續對Nginx的使用基本上都是對此配置文件進行相應的修改,Nginx主配置文件所在位置:/usr/local/nginx/conf/nginx.conf

該配置文件中有很多#開頭的內容,表示註釋內容,我們去掉所有以#開頭的段落,精簡之後的內容如下:

根據上述截圖,我們可以很明顯的將nginx.conf配置文件分爲三部分:

第一部分:全局塊

從配置文件的開始到events塊之間的內容,主要是設置一些影響Nginx服務器整體運行的配置指令,主要包括配置運行Nginx服務器的用戶(組)、允許生成的worker process數,進程PID存放路徑、日誌存放路徑和類型以及配置文件的引入等

比如上面第一行配置的:

worker_processes  1;

這是Nginx服務器併發處理服務的關鍵配置,worker_processes值越大,可以支持的併發處理量也越多,但是會受到硬件、軟件等設備的制約

第二部分:events塊

比如上面的配置:

events {
    worker_connections  1024;
}

events塊涉及的指令主要影響Nginx服務器與用戶的網絡連接,常用的設置包括是否開啓對多work process下的網絡連接進行序列化,是否允許同時接收多個網絡連接,選取哪種事件驅動模型來處理連接請求,每個word process可以同時支持的最大連接數等。上述例子就表示每個work process支持的最大連接數爲1024,這部分的配置對Nginx的性能影響較大,在實際中應該靈活配置

第三部分:http塊

比如上面的配置:

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }
		
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

這算是Nginx服務器配置中最頻繁的部分,代理、緩存和日誌定義等絕大多數功能和第三方模塊的配置都在這裏。需要注意的是http塊又包括http全局塊、server塊

http全局塊

http全局塊配置的指令包括文件引入、MIME-TYPE定義、日誌自定義、連接超時時間、單鏈接請求數上限等

server

這塊和虛擬主機有密切關係,虛擬主機從用戶角度看和一臺獨立的硬件主機是完全一樣的,該技術的產生是爲了節省互聯網服務器硬件成本,每個http塊可以包括多個server塊,而每個server塊就相當於一個虛擬主機,而每個server塊也分爲全局server塊,以及可以同時包含多個locaton塊

全局server:最常見的配置是本虛擬機主機的監聽配置和本虛擬主機的名稱或IP配置

location:一個server塊可以配置多個location塊。這塊的主要作用是基於Nginx服務器接收到的請求字符串(例如 server_name/uri-string),對虛擬主機名稱(也可以是 IP 別名)之外的字符串(例如 前面的 /uri-string)進行匹配,對特定的請求進行處理。地址定向、數據緩存和應答控制等功能,還有許多第三方模塊的配置也在這裏進行

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章