LNMP原理與簡(jiǎn)單部署過(guò)程
今天繼續(xù)給大家介紹Linux運(yùn)維的相關(guān)知識(shí),本文主要內(nèi)容是LNMP原理與簡(jiǎn)單部署。
一、LNMP架構(gòu)原理
LNMP架構(gòu),是指在Linux平臺(tái)下,由運(yùn)行Nginx的web服務(wù)器,運(yùn)行PHP的動(dòng)態(tài)頁(yè)面解析程序和運(yùn)行MySQL的數(shù)據(jù)庫(kù)組成的網(wǎng)站架構(gòu),也是當(dāng)前常用的系統(tǒng)架構(gòu)之一。在LNMP架構(gòu)中,Nginx本身只負(fù)責(zé)靜態(tài)頁(yè)面的處理,當(dāng)需要處理動(dòng)態(tài)頁(yè)面時(shí),則需要Nginx將相關(guān).php頁(yè)面轉(zhuǎn)交給php-fpm來(lái)進(jìn)行處理,php-fpm會(huì)將PHP頁(yè)面解析成html文件,然后交給Nginx進(jìn)行處理。與LAMP架構(gòu)相比,LNMP的主要區(qū)別在于對(duì)PHP的處理上,LAMP對(duì)于PHP動(dòng)態(tài)資源的處理是通過(guò)Apache的libphp5.so模塊進(jìn)行的,該模塊內(nèi)嵌如Apache中,而Nginx對(duì)PHP動(dòng)態(tài)資源的處理則是通過(guò)php-fpm進(jìn)行的,php-fpm是一個(gè)獨(dú)立的模塊,因此,在搭建LNMP架構(gòu)時(shí),Nginx和php-fpm都需要進(jìn)行開(kāi)啟。LNMP架構(gòu)如下所示:
二、LNMP部署實(shí)戰(zhàn)
接下來(lái),我們就進(jìn)行LNMP的部署實(shí)戰(zhàn)。
(一)YUM源配置
在進(jìn)行實(shí)戰(zhàn)YUM部署LNMP前,我們要首先配置LNMP的YUM源。想要YUM安裝Nginx,就必須安裝EPEL的擴(kuò)展源,可以執(zhí)行以下命令進(jìn)行EPEL擴(kuò)展源的安裝:
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
(二)Nginx安裝與部署
Nginx的安裝非常簡(jiǎn)單,只需要執(zhí)行命令:
yum install -y nginx
即可,Nginx安裝完畢后,Nginx的啟動(dòng)命令為:
systemctl start nginx
啟動(dòng)后,嘗試訪問(wèn)Nginx頁(yè)面,結(jié)果如下:
以這種方式安裝的Nginx,其默認(rèn)配置文件為/etc/nginx/nginx.conf,默認(rèn)根目錄為/usr/share/nginx/html。
(三)PHP安裝與部署
接下來(lái),我們需要安裝PHP,并使得PHP支持Nginx。首先,安裝PHP和PHP與Nginx的對(duì)接php-fpm,執(zhí)行命令:
yum install -y php php-fpm
在安裝完成后,我們還需要修改Nginx的配置文件,在http模塊的server模塊下,添加如下內(nèi)容:
location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
添加后的頁(yè)面如下所示:
在以上配置中,location模塊是Nginx的一個(gè)定位模塊,location后面的“~”表示進(jìn)行正則表達(dá)式的匹配,匹配的對(duì)象是以.php結(jié)尾的動(dòng)態(tài)資源。這樣,當(dāng)這樣的資源被匹配到之后,就會(huì)進(jìn)行l(wèi)ocation模塊中指定的處理。fastcgi_pass指定了php-fpm模塊的IP地址和端口號(hào),fastcgi_param參數(shù)指定了讀取php文件的位置。上述安裝完成后,在網(wǎng)站根目錄中寫(xiě)一個(gè)PHP的測(cè)試頁(yè)面,重啟PHP后嘗試訪問(wèn),結(jié)果如下:
(四)MySQL安裝與部署
最后,我們來(lái)安裝MySQL,MySQL的安裝比較簡(jiǎn)單,只需要執(zhí)行命令:
yum install -y mariadb mariadb-server
安裝完成后,發(fā)現(xiàn)當(dāng)前系統(tǒng)打開(kāi)了3306、9000和80端口,如下所示:
為了使得我們的PHP支持MySQL,還需要安裝php-mysql,如下所示,這樣,安裝完成后,我們的PHP就可以與MySQL對(duì)接了。嘗試安裝wordpress,結(jié)果如下所示:
到此這篇關(guān)于LNMP原理與簡(jiǎn)單部署的文章就介紹到這了,更多相關(guān)LNMP原理部署內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用Nginx服務(wù)器如何實(shí)現(xiàn)動(dòng)靜分離和反向代理
這篇文章主要介紹了使用Nginx服務(wù)器如何實(shí)現(xiàn)動(dòng)靜分離和反向代理方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-05-05Nginx如何配置加密證書(shū)訪問(wèn)實(shí)現(xiàn)
本文主要介紹了Nginx如何配置加密證書(shū)訪問(wèn)實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08Nginx實(shí)現(xiàn)https網(wǎng)站配置代碼實(shí)例
這篇文章主要介紹了Nginx實(shí)現(xiàn)https網(wǎng)站配置代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11重啟或殺掉Nginx進(jìn)程后丟失nginx.pid的解決辦法
在重啟或殺掉nginx進(jìn)程后,會(huì)丟失nginx.pid文件,導(dǎo)致nginx無(wú)法正常啟動(dòng),這里分享下解決方法2014-01-01nginx php-fpm環(huán)境中chroot功能的配置使用方法
這篇文章主要介紹了nginx php-fpm環(huán)境中chroot功能的配置使用方法,此方法是比禁用PHP敏感函數(shù)更好的一個(gè)安全防護(hù)手手段,需要的朋友可以參考下2014-05-05Nginx服務(wù)器作反向代理時(shí)的緩存配置要點(diǎn)解析
這篇文章主要介紹了Nginx服務(wù)器作反向代理時(shí)的緩存配置要點(diǎn)解析,需要的朋友可以參考下2016-04-04Kubernetes中Nginx配置熱加載的全過(guò)程
Nginx已經(jīng)是互聯(lián)網(wǎng)IT業(yè)界一個(gè)無(wú)敵的存在,作為反向代理、負(fù)載均衡、Web服務(wù)器等多種角色的扮演者,下面這篇文章主要給大家介紹了關(guān)于Kubernetes中Nginx配置熱加載的相關(guān)資料,需要的朋友可以參考下2022-01-01