真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

nginx服務(wù)部署


 

臺安網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)公司公司2013年成立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)公司

作者:Georgekai

歸檔:學(xué)習(xí)筆記

2018/2/2

 

nginx服務(wù)部署

1.1 常用web軟件了解

1.1.1 web服務(wù)主流軟件地址

https://w3techs.com/technologies/overview/web_server/all

1.1.2 常用來提供動態(tài)服務(wù)的軟件 

PHP:.php結(jié)尾的文件,大中小網(wǎng)站都有適合,動態(tài)網(wǎng)頁語言PHP程序的解析容器,一般配合apache或nginx解析  動態(tài)程序

Tomcat:適用于中小企業(yè),不適合并發(fā)量高的環(huán)境

Resin:適用于大型企業(yè),適合并發(fā)量高的環(huán)境

IIS:.asp結(jié)尾的文件,windows下web服務(wù)軟件

 

1.2 Nginx介紹

1.Nginx(“engine x”)是一個開源的,支持高性能、高并發(fā)的WWW服務(wù)器和代理服務(wù)軟件

2.Nginx因具有高并發(fā)(特別是靜態(tài)資源)、占用系統(tǒng)資源少等特性,且功能豐富而逐漸流行起來。

3.Nginx可以運行在UNIX、Linux、BSD、Mac OS X、Solaris,以及Microsoft Windows等操作系統(tǒng)中。

4.當(dāng)前流行的Nginx Web組合被稱為LNMP或LEMP

5.L==Linux  N/E==Nginx  M==MySQL   P==php   網(wǎng)站的代碼程序 ===搭建出一個完整的網(wǎng)站

1.2.1 官方網(wǎng)站:http://nginx.org/

1.2.2 軟件版本的選擇(建議) 

當(dāng)前時間往前推1年到半年之間的版本相對穩(wěn)定(近期的可能有bug)

1.2.3 模塊使用(中文版):http://manual.51yip.com/nginx/

1.3 nginx軟件特性說明

1) 支持高并發(fā):能支持幾萬并發(fā)連接(特別是靜態(tài)小文件業(yè)務(wù)環(huán)境)

2) 資源消耗少:在3萬并發(fā)連接下,開啟10個Nginx線程消耗的內(nèi)存不到200MB

     PS:(測試軟件工具:ab,JMeter,Webbench,LoadRunner,http_load,tcpcopy) 

3) 可以做HTTP反向代理及加速緩存、即負載均衡功能(4層以及7層),

     內(nèi)置對RS節(jié)點服務(wù)器健康檢查功能,這相當(dāng)于專業(yè)的Haproxy軟件或LVS(4層)的功能。

     PS:LVS等軟件沒有健康檢查功能

4)  具備Squid等專業(yè)緩存軟件等的緩存功能。(memcache/redis)

5) 支持異步網(wǎng)絡(luò)I/O事件模型epoll(Linux 2.6+)

     PS:apache使用的模型:select,性能沒有nginx好

1.4 為什么Nginx總體性能比Apache高

Ngimx:使用最新的epoll(linux 2.6內(nèi)核)模型,和kqueue(freebsd)異步網(wǎng)絡(luò)I/O模型

特點比喻:找女朋友,宿管阿姨查看登記信息,快速查找人員信息,這是epoll模型

Apache:使用的是傳統(tǒng)的select模型

特點比喻:找女朋友,宿管阿姨一個一個帶你去找,去問,這是select模型

nginx服務(wù)部署 

 

1.5 nginx軟件的編譯安裝步驟

PS:也可以參考官方文檔:從源頭構(gòu)建nginx:http://nginx.org/en/docs/configure.html 

1.5.1先 檢查軟件安裝的系統(tǒng)環(huán)境

cat /etc/redhat-release

uname –r

1.5.2 下載nginx軟件---1.12.2 復(fù)制鏈接地址(統(tǒng)一位置進行下載)

mkdir -p /server/tools

cd /server/tools

wget -q http://nginx.org/download/nginx-1.12.2.tar.gz

1.5.3 安裝nginx的依賴包(pcre-devel openssl-devel)

yum install -y pcre-devel openssl-devel

PS:不安裝pcre,不能使用rewrite模塊(rewrite需要識別perl語言的正則表達式)

PS:openssl:對網(wǎng)站遠程訪問進行加密

1.5.4 編譯安裝軟件的步驟

提前條件:如果系統(tǒng)沒有安裝兼容程序庫、開發(fā)工具的,請安裝一下基礎(chǔ)依賴包
 yum install gcc gcc-c++ automake autoconf -y

 

1. 解壓到當(dāng)前目錄nginx-1.12.2.tar.gz

 tar xf nginx-1.12.2.tar.gz

2. 進入nginx-1.12.2目錄

 cd nginx-1.12.2/

3. 創(chuàng)建www虛擬用戶

 PS:讓www用戶專門管理nginx服務(wù),root權(quán)限太大,不安全

 useradd -M -s /sbin/nologin www

3. 指定安裝路徑,配置參數(shù)(下面有參數(shù)解釋)

 ./configure --prefix=/application/nginx-1.12.2 --user=www --group=www --with-http_stub_status_module --with-http_ssl_module

4. 編譯(翻譯)

 PS:編譯過程實質(zhì)是將各種程序語言轉(zhuǎn)換為系統(tǒng)可以識別的二進制信息

 make

5. 編譯安裝

 make install

6. 創(chuàng)建程序目錄軟連接

 PS:避免版本經(jīng)常變化,到時候只需更改軟連接,不需要更改代碼程序

 ln -s /application/nginx-1.12.2/ /application/nginx

7. 啟動網(wǎng)站服務(wù)

 /application/nginx/sbin/nginx

8. 檢查服務(wù)是否啟動成功

 ps -ef |grep nginx

9. 測試訪問

 lynx 10.0.0.7

 curl 10.0.0.7

 瀏覽器訪問方式

 

1.6 編輯安裝配置參數(shù)說明

./configure

--prefix=PATH             ——指定軟件程序安裝的路徑信息

--user=USER              ——創(chuàng)建一個虛擬用戶,用于管理nginx服務(wù)的worker進程

--group=GROUP             ——創(chuàng)建一個虛擬用戶組,用于管理nginx服務(wù)的worker進程

--with-http_ssl_module         ——讓nginx服務(wù)可以支持https訪問

--with-http_stub_status_module     ——便于監(jiān)控軟件監(jiān)視nginx服務(wù)運行狀態(tài)

以下參數(shù)可參考(默認有上面的即可): 

    --sbin-path=/usr/local/nginx/nginx

    --conf-path=/usr/local/nginx/nginx.conf

    --pid-path=/usr/local/nginx/nginx.pid

    --with-pcre=../pcre-8.41

    --with-zlib=../zlib-1.2.11

1.7 nginx命令參數(shù)

/application/nginx/sbin/nginx              ——啟動nginx

/application/nginx/sbin/nginx -s reload ——平滑重啟

/application/nginx/sbin/nginx -s stop  ——停止服務(wù)

/application/nginx/sbin/nginx -t          ——配置文件語法檢查

/application/nginx/sbin/nginx -h          ——查看參數(shù)使用幫助信息

/application/nginx/sbin/nginx -V     ——查看軟件編譯安裝配置參數(shù)信息

 

1.7.1 nginx 查看軟件編譯安裝配置參數(shù)信息(-V)

[root@web01 application]#/application/nginx/sbin/nginx -V

nginx version: nginx/1.10.3

built by gcc 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC)

built with OpenSSL 1.0.1e-fips 11 Feb 2013

TLS SNI support enabled

configure arguments: --prefix=/application/nginx-1.10.3 --user=www --group=www --with-http_stub_status_module --with-http_ssl_module

PS:一般用于查看之前配置nginx的參數(shù)

1.7.2 nginx 查看參數(shù)使用幫助信息(-h)

[root@web01 application]# /application/nginx/sbin/nginx -h

nginx version: nginx/1.10.3

Usage: nginx [-?hvVtTq] [-s signal] [-c filename] [-p prefix] [-g directives]

 

Options:

  -?,-h         : this help

  -v            : show version and exit

  -V            : show version and configure options then exit

  -t            : test configuration and exit

  -T            : test configuration, dump it and exit

  -q            : suppress non-error messages during configuration testing

  -s signal     : send signal to a master process: stop, quit, reopen, reload

  -p prefix     : set prefix path (default: /application/nginx-1.10.3/)

  -c filename   : set configuration file (default: conf/nginx.conf)

  -g directives : set global directives out of configuration file

1.8 部署nginx軟件過程中可能遇到的問題 

1.軟件依賴包未正確安裝問題---PCRE依賴包沒有安裝

          ./configure: error: the HTTP rewrite module requires the PCRE library.

          You can either disable the module by using --without-http_rewrite_module

          option, or install the PCRE library into the system, or build the PCRE library

          statically from the source with nginx by using --with-pcre= option.

解決方法:yum install pcre pcre-devel–y

 

2.軟件依賴包未正確安裝問題---OPENSSL依賴包沒有安裝  

          ./configure: error: SSL modules require the OpenSSL library.

          You can either do not enable the modules, or install the OpenSSL library

          into the system, or build the OpenSSL library statically from the source

          with nginx by using --with-openssl= option.

解決方法:yum install openssl openssl-devel -y

1.9 nginx軟件啟動過程中可能遇到的問題

 1. 啟動Nginx時如下報錯“nginx:[emerg]getpwnam(“nginx”)failed”

   解答:這是因為沒有對應(yīng)的Nginx服務(wù)用戶,執(zhí)行useradd nginx -s /sbin/nologin -M創(chuàng)建

1.10 nginx軟件程序目錄結(jié)構(gòu)

ls -l /application/nginx/

drwxr-xr-x 2 root root 4096 Sep  8 21:22conf    ---配置文件保存目錄

drwxr-xr-x 2 root root 4096 Sep  8 21:22html    ---站點目錄

drwxr-xr-x 2 root root 4096 Sep  8 21:52logs    ---nginx服務(wù)相關(guān)日志文件保存目錄(錯誤日志 訪問日志)

drwxr-xr-x 2 root root 4096 Sep  8 21:22sbin    ---服務(wù)命令保存目錄(只有一個nginx命令文件)

 

1.10.1 nginx配置文件目錄conf下的主要文件說明:

mime.types         ——媒體資源類型文件

nginx.conf         ——nginx服務(wù)主配置文件

nginx.conf.default       ——nginx服務(wù)主配置文件的默認配置(模板)

PS: vimdiff  nginx.conf   nginx.conf.default  ——可以比較倆個文件之間的區(qū)別(實用性廣泛)

1.11 測試環(huán)境模擬搭建網(wǎng)站

1.11.1 精簡化nginx.conf主配置文件內(nèi)容

grep -Ev "#|^$" nginx.conf.default > nginx.conf

PS:過濾掉包含#號的行,和空行

1.11.2 編輯主配置文件前先備份

cp nginx.conf {,.bak}

1.11.3 編輯主配置文件

vim /application/nginx/conf/nginx.conf

worker_processes  1;                                                    ——worker主進程數(shù)(相當(dāng)于服務(wù)員)進程數(shù)越多效率越高

events {                                                                       ——事件區(qū)塊開始

    worker_connections  1024;                                 ——每個主進程的最大連接數(shù)(想當(dāng)于客戶)

}                                                                                 ——事件區(qū)塊結(jié)束

http {                                                                          ——http區(qū)塊開始

    include       mime.types;                         ——支持的媒體類型文件

    default_type  application/octet-stream;            ——默認支持的媒體類型文件

    sendfile        on;                                 ——高效傳輸模式(基于磁盤block傳輸方式,要快許多)

    keepalive_timeout  65;                                     ——連接超時(65s內(nèi)沒有數(shù)據(jù)傳輸即斷開)

    server {                                                           ——第一個server區(qū)塊(就是一個網(wǎng)站(虛擬主機),可以有多個)

        listen       80;                           ——監(jiān)聽端口

        server_name  www.georgekai.com;            ——提供服務(wù)的域名

        location / {                                          ——第一個location(管理部分網(wǎng)站資源文件)

            root   html/www;                      ——站點根目錄(存放首頁文件、圖片...)

            index  georgekai.html index.htm; ——網(wǎng)站默認首頁文件(空格分割多個文件)

        }                                                           ——第一個server區(qū)塊結(jié)束

 

        error_page   500 502 503 504 404 /kai.jpg; ——對應(yīng)的http狀態(tài)碼,使用kai.jpg回應(yīng)客戶

        location = /kai.jpg {                                     ——第二個server區(qū)塊...(第二個網(wǎng)站(虛擬主機))

            root   html;                                     .......同上........

        }

    }

}

1.11.4 創(chuàng)建站點目錄,生成首頁文件

1. 創(chuàng)建站點目錄

mkdir /application/nginx/html/www

2. 生成首頁文件(html語言)

vim georgekai.html

  網(wǎng)站標題

       網(wǎng)站主體內(nèi)容

01 oldboy
02 oldgril
03 olddog

PS:以上內(nèi)容是html語言格式,也可隨便寫點內(nèi)容做測試

1.11.5 檢查配置文件語法并重啟nginx服務(wù)

/application/nginx/sbin/nginx   -t

/application/nginx/sbin/nginx    -s reload

1.11.6 瀏覽器進行測試訪問

10.0.0.7

www.georgekai.com

PS:通過域名訪問,需要將以上解析關(guān)系添加到本機hosts文件

1.12 nginx主配置文件區(qū)域分類及說明

1. main區(qū)塊

2. event區(qū)塊

3. http區(qū)塊

    server區(qū)塊(可以有多個),每個server相當(dāng)于一個網(wǎng)站

        location區(qū)塊(可以有多個),每個location相當(dāng)于server的一個模塊

 nginx服務(wù)部署 

 

1.13 什么叫站點目錄,什么首頁文件

nginx服務(wù)部署 



馬上過年了,年假期間不會中斷更新?。。?!小伙伴們可以考慮用ansible部署管理Nginx

關(guān)注微信公共號:linux運維菜鳥之旅

小伙伴們可以關(guān)注我的微信公眾號:linux運維菜鳥之旅

nginx服務(wù)部署

關(guān)注“中國電信天津網(wǎng)廳”公眾號,首次綁定可免費領(lǐng)2G流量,為你的學(xué)習(xí)提供流量! 

nginx服務(wù)部署


本文名稱:nginx服務(wù)部署
本文路徑:http://weahome.cn/article/pdgpgj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部