一、網(wǎng)站訪問流程

完整的請(qǐng)求流程:
1.用戶在自己的瀏覽器中輸入一段web請(qǐng)求地址
2.瀏覽器會(huì)對(duì)這個(gè)請(qǐng)求進(jìn)行拆分:
ip地址找對(duì)應(yīng)的服務(wù)器
port端口找服務(wù)器上監(jiān)聽該端口的服務(wù)
然后將最后的具體請(qǐng)求交給web服務(wù)去處理
3.web服務(wù)接收該請(qǐng)求后,處理該請(qǐng)求
4.如果遇到一些數(shù)據(jù)處理,需要到后端的數(shù)據(jù)庫服務(wù)獲取數(shù)據(jù)
5.數(shù)據(jù)庫服務(wù)返回?cái)?shù)據(jù)給web服務(wù)
6.web服務(wù)生成完整的web網(wǎng)頁,以數(shù)據(jù)報(bào)文的形式發(fā)送到客
戶端瀏覽器
7.瀏覽器渲染web網(wǎng)頁,最后展示給用戶
二、LNMP簡(jiǎn)介
互聯(lián)網(wǎng)公司最常用的經(jīng)典Web服務(wù)環(huán)境組合就是LAMP(即Linux、Apache、MySQL、PHP),近幾年隨著Nginx Web服務(wù)的逐漸流行,又出現(xiàn)了新的Web服務(wù)環(huán)境組合——LNMP或LEMP,其中LNMP為L(zhǎng)inux、Nginx、MySQL、PHP等首字母的縮寫,而LEMP中的E則表示Nginx?,F(xiàn)在,LNMP已經(jīng)逐漸成為國(guó)內(nèi)大中型互聯(lián)網(wǎng)公司網(wǎng)站的主流組合環(huán)境。
---LNMP 之 N
Nginx作為Web服務(wù)器的主要應(yīng)用場(chǎng)景包括:
? Nginx本身也是一個(gè)靜態(tài)資源的服務(wù)器,當(dāng)只有靜態(tài)資源的時(shí)候,就可以使用Nginx來做服務(wù)器,如果一個(gè)網(wǎng)站只是靜態(tài)頁面的話,那么就可以通過這種方式來實(shí)現(xiàn)部署。(使用Nginx運(yùn)行HTML、JS、CSS、小圖片等靜態(tài)數(shù)據(jù))
? Nginx結(jié)合FastCGI運(yùn)行PHP等動(dòng)態(tài)程序(例如使用fastcgi_pass方式)。
? 反向代理應(yīng)該是Nginx使用最多的功能了,反向代理(Reverse Proxy)方式是指以代理服務(wù)器來接受internet上的連接請(qǐng)求,然后將請(qǐng)求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的服務(wù)器,并將從服務(wù)器上得到的結(jié)果返回給internet上請(qǐng)求連接的客戶端,此時(shí)代理服務(wù)器對(duì)外就表現(xiàn)為一個(gè)反向代理服務(wù)器。
三、安裝nginx過程中碰到的問題
./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=<path> option
說是一個(gè)PCRE文件有問題自己摸索了一下:
1.rpm -e --nodeps pcre
2.wget http://sourceforge.net/projects/pcre/files/pcre/8.32/pcre-8.32.tar.gz/download
3.tar -xzvf pcre-8.32.tar.gz
4.cd pcre-8.32
5./configure --prefix=/usr/local/pcre
6.make && make install
四、安裝配置nginx
1.安裝nginx軟件的基本依賴軟件
yum install openssl-devel pcre-devel gcc -y
2.編譯安裝nginx
注意:編譯安裝nginx的時(shí)候,應(yīng)該有一個(gè)專用的啟動(dòng)用戶,我們把這個(gè)用戶設(shè)置為 www。
tar xf nginx-1.10.2.tar.gz
cd nginx-1.10.2
./configure --prefix=/data/server/nginx
make
make install
3.創(chuàng)建專用的啟動(dòng)用戶www
useradd www -s /sbin/nologin -M
4.修改配置文件
vim /data/server/nginx/conf/nginx.conf
注意:將user后面的nobody更改為www
五、檢查效果
1.啟動(dòng)nginx
[root@ccy ~]# /data/server/nginx/sbin/nginx
2.檢查端口
[root@ccy ~]# netstat -tnulp | grep nginx
六、nginx命令簡(jiǎn)介
1. 檢查nginx
[root@ccy ~]# /data/server/nginx/sbin/nginx -t
2. 啟動(dòng)nginx
[root@ccy ~]# /data/server/nginx/sbin/nginx
3. 關(guān)閉nginx
[root@ccy ~]# /data/server/nginx/sbin/nginx -s stop
4.啟動(dòng)后檢查
[root@ccy ~]# netstat -tnulp | grep nginx
說明:Configure是一個(gè)可執(zhí)行腳本,它有很多選項(xiàng),在待安裝的源碼路徑下使用命令./configure –help輸出詳細(xì)的選項(xiàng)列表。
其中--prefix選項(xiàng)是配置安裝的路徑,如果不配置該選項(xiàng),安裝后可執(zhí)行文件默認(rèn)放在/usr /local/bin,庫文件默認(rèn)放在/usr/local/lib,配置文件默認(rèn)放在/usr/local/etc,其它的資源文件放在/usr /local/share,比較凌亂。./configure --prefix=/usr/local/test可以把所有資源文件放在/usr/local/test的路徑中,不會(huì)雜亂。用了—prefix選項(xiàng)的另一個(gè)好處是卸載軟件或移植軟件。當(dāng)某個(gè)安裝的軟件不再需要時(shí),只須簡(jiǎn)單的刪除該安裝目錄,就可以把軟件卸載得干干凈凈;移植軟件只需拷貝整個(gè)目錄到另外一個(gè)機(jī)器即可(相同的操作系統(tǒng))
七、配置文件介紹
默認(rèn)配置文件:.../nginx/conf/nginx.conf
Nginx配置文件主要分成四部分:main(全局設(shè)置)、server(主機(jī)設(shè)置)、upstream(上游服務(wù)器 設(shè)置,主要為反向代理、負(fù)載均衡相關(guān)配置)和 location(URL匹配特定位置后的設(shè)置),每部分包含若干個(gè)指令。main部分設(shè)置的指令將影響其它所有部分的設(shè)置;server部分的指令主要用于指定虛擬主機(jī)域名、IP和端口;upstream的指令用于設(shè)置一系列的后端服務(wù)器,設(shè)置反向代理及后端服務(wù)器的負(fù)載均衡;location部分用于匹配網(wǎng)頁位置(比如,根目錄“/”,“/images”,等等)。他們之間的關(guān)系式:server繼承main,location繼承server;upstream既不會(huì)繼承指令也不會(huì)被繼承。它有自己的特殊指令,不需要在其他地方的應(yīng)用
注意:
以上環(huán)境是在centos6.10下部署,nginx是1.10
后續(xù)正在更新中。。。。
Nginx擴(kuò)展:https://www.cnblogs.com/ysocean/p/9384877.html