說(shuō)到LNMP,我們不得不提到LAMP,我們知道,LAMP是一個(gè)多C/S架構(gòu)的平臺(tái),在此架構(gòu)中web客戶端基于TCP/IP通過(guò)http協(xié)議發(fā)起傳送,這個(gè)請(qǐng)求可能是靜態(tài)的也可能是動(dòng)態(tài)的。所以web服務(wù)器通過(guò)發(fā)起請(qǐng)求的后綴來(lái)判斷,如果是靜態(tài)的就由web服務(wù)器自行處理,然后將資源發(fā)給客戶端。如果是動(dòng)態(tài)的web服務(wù)器會(huì)通過(guò)CGI(Common Gateway Interfence)協(xié)議發(fā)起給php。如果php以模塊形式與web服務(wù)器聯(lián)系,那么它們是通過(guò)內(nèi)部共享內(nèi)存的方式,如果php單獨(dú)的一臺(tái)服務(wù)器,那么它們是以sockets套接字的方式進(jìn)行通信(這又是一個(gè)C/S架構(gòu)),這時(shí)php會(huì)相應(yīng)的執(zhí)行一段程序,如果在程序執(zhí)行時(shí)需要一些數(shù)據(jù),那么php就會(huì)通過(guò) mysql協(xié)議發(fā)送給mysql服務(wù)器(這也可以看作是一個(gè)C/S架構(gòu)),由mysql服務(wù)器處理,將數(shù)據(jù)供給php程序。
LNMP
是指一組通常一起使用來(lái)運(yùn)行動(dòng)態(tài)網(wǎng)站或者服務(wù)器的自由軟件名稱首字母縮寫(xiě)。L指Linux,N指Nginx,M一般指MySQL,也可以指MariaDB,P一般指PHP,也可以指Perl或Python。LNMP架構(gòu)和LAMP架構(gòu)挺像的,只不過(guò)一個(gè)用的Apache一個(gè)用的Nginx。LNMP就是Linux+Nginx+MySQL/mairadb+PHP,Nginx和Apache一樣都是web服務(wù)器。還有一點(diǎn)不同的是在LNMP結(jié)構(gòu)里php會(huì)啟動(dòng)一個(gè)php-fpm服務(wù),而大多數(shù)時(shí)候LANP中的php只是作為Apache的一個(gè)模塊存在(在CentOS8中LAMP架構(gòu)也啟動(dòng)php-fpm服務(wù))。
Nginx會(huì)把用戶的動(dòng)態(tài)頁(yè)面請(qǐng)求交給php服務(wù)去處理,這個(gè)php服務(wù)就會(huì)去和數(shù)據(jù)庫(kù)進(jìn)行交互。用戶的靜態(tài)頁(yè)面請(qǐng)求Nginx會(huì)直接處理,Nginx處理靜態(tài)請(qǐng)求的速度要比apache快很多性能上要好,所以apache和Nginx在動(dòng)態(tài)請(qǐng)求處理上區(qū)別不大,但如果是靜態(tài)請(qǐng)求處理的話就會(huì)明顯發(fā)現(xiàn)Nginx要快于apache,而且Nginx能承受的并發(fā)量要比apache大,可以承受好幾萬(wàn)的并發(fā)量,所以大一些的網(wǎng)站都會(huì)使用Nginx作為web服務(wù)器。
動(dòng)態(tài)頁(yè)面和靜態(tài)頁(yè)面靜態(tài)網(wǎng)頁(yè):
(1)靜態(tài)網(wǎng)頁(yè)不能簡(jiǎn)單地理解成靜止不動(dòng)的網(wǎng)頁(yè),他主要指的是網(wǎng)頁(yè)中沒(méi)有程序代碼,只有HTML(即:超文本標(biāo)記語(yǔ)言),一般后綴為.html,.htm,或者.xml等。雖然靜態(tài)網(wǎng)頁(yè)的頁(yè)面一旦做成,內(nèi)容就不會(huì)再改變了。但是,靜態(tài)網(wǎng)頁(yè)也包括一些能動(dòng)的部分,這些主要是一些GIF動(dòng)畫(huà)等
(2)靜態(tài)網(wǎng)頁(yè)的打開(kāi),用戶可以直接雙擊,并且不管任何人任何時(shí)間打開(kāi)的頁(yè)面的內(nèi)容都是不變的。
動(dòng)態(tài)網(wǎng)頁(yè):
(1)動(dòng)態(tài)網(wǎng)頁(yè)是指跟靜態(tài)網(wǎng)頁(yè)相對(duì)的一種網(wǎng)頁(yè)編程技術(shù)。動(dòng)態(tài)網(wǎng)頁(yè)的網(wǎng)頁(yè)文件中除了HTML標(biāo)記以外,還包括一些特定功能的程序代碼,這些代碼可以使得瀏覽器和服務(wù)器可以交互,所以服務(wù)器端根據(jù)客戶的不同請(qǐng)求動(dòng)態(tài)的生成網(wǎng)頁(yè)內(nèi)容。即:動(dòng)態(tài)網(wǎng)頁(yè)相對(duì)于靜態(tài)網(wǎng)頁(yè)來(lái)說(shuō),頁(yè)面代碼雖然沒(méi)有變,但是顯示的內(nèi)容卻是可以隨著時(shí)間、環(huán)境或者數(shù)據(jù)庫(kù)操作的結(jié)果而發(fā)生改變的。
(2)動(dòng)態(tài)網(wǎng)頁(yè),與網(wǎng)頁(yè)上的各種動(dòng)畫(huà)、滾動(dòng)字幕等視覺(jué)上的動(dòng)態(tài)效果沒(méi)有直接關(guān)系,動(dòng)態(tài)網(wǎng)頁(yè)也可以是純文字內(nèi)容的,也可以是包含各種動(dòng)畫(huà)的內(nèi)容,這些只是網(wǎng)頁(yè)具體內(nèi)容的表現(xiàn)形式,無(wú)論網(wǎng)頁(yè)是否具有動(dòng)態(tài)效果,只要是采用了動(dòng)態(tài)網(wǎng)站技術(shù)(如PHP、ASP、JSP等)生成的網(wǎng)頁(yè)都可以稱為動(dòng)態(tài)網(wǎng)頁(yè)。
動(dòng)態(tài)網(wǎng)頁(yè)和靜態(tài)網(wǎng)頁(yè)的區(qū)別:
(1)更新和維護(hù):
靜態(tài)網(wǎng)頁(yè)內(nèi)容一經(jīng)發(fā)布到網(wǎng)站服務(wù)器上,無(wú)論是否有用戶訪問(wèn),這些網(wǎng)頁(yè)內(nèi)容都是保存在網(wǎng)站服務(wù)器上的。如果要修改網(wǎng)頁(yè)的內(nèi)容,就必須修改其源代碼,然后重新上傳到服務(wù)器上。靜態(tài)網(wǎng)頁(yè)沒(méi)有數(shù)據(jù)庫(kù)的支持,當(dāng)網(wǎng)站信息量很大的時(shí)候網(wǎng)頁(yè)的制作和維護(hù)都很困難
動(dòng)態(tài)網(wǎng)頁(yè)可以根據(jù)不同的用戶請(qǐng)求,時(shí)間或者環(huán)境的需求動(dòng)態(tài)的生成不同的網(wǎng)頁(yè)內(nèi)容,并且動(dòng)態(tài)網(wǎng)頁(yè)一般以數(shù)據(jù)庫(kù)技術(shù)為基礎(chǔ),可以大大降低網(wǎng)站維護(hù)的工作量
(2)交互性:
靜態(tài)網(wǎng)頁(yè)由于很多內(nèi)容都是固定的,在功能方面有很大的限制,所以交互性較差
動(dòng)態(tài)網(wǎng)頁(yè)則可以實(shí)現(xiàn)更多的功能,如用戶的登錄、注冊(cè)、查詢等
(3)響應(yīng)速度:
靜態(tài)網(wǎng)頁(yè)內(nèi)容相對(duì)固定,容易被搜索引擎檢索,且不需要連接數(shù)據(jù)庫(kù),因此響應(yīng)速度較快
動(dòng)態(tài)網(wǎng)頁(yè)實(shí)際上并不是獨(dú)立存在于服務(wù)器上的網(wǎng)頁(yè)文件,只有當(dāng)用戶請(qǐng)求時(shí)服務(wù)器才返回一個(gè)完整的網(wǎng)頁(yè),其中涉及到數(shù)據(jù)的連接訪問(wèn)和查詢等一系列過(guò)程,所以響應(yīng)速度相對(duì)較慢
(4)訪問(wèn)特點(diǎn):
靜態(tài)網(wǎng)頁(yè)的每個(gè)網(wǎng)頁(yè)都有一個(gè)固定的URL,且網(wǎng)頁(yè)URL以.htm、.html、.shtml等常見(jiàn)形式為后綴,而不含有“?”,可以直接雙擊打開(kāi)
動(dòng)態(tài)網(wǎng)頁(yè)中的“?”對(duì)搜索引擎檢索存在一定的問(wèn)題,搜索引擎一般不可能從一個(gè)網(wǎng)站的數(shù)據(jù)庫(kù)中訪問(wèn)全部網(wǎng)頁(yè),或者出于技術(shù)方面的考慮,搜索之中不去抓取網(wǎng)址中“?”后面的內(nèi)容,不能直接雙擊打開(kāi)
綜上所述
如果網(wǎng)頁(yè)內(nèi)容相對(duì)的簡(jiǎn)單,不需要頻繁的進(jìn)行改動(dòng),或者只是為了展示信息等,就用靜態(tài)網(wǎng)頁(yè),簡(jiǎn)單易操作,不需要管理數(shù)據(jù)庫(kù)等
如果網(wǎng)頁(yè)內(nèi)容相對(duì)復(fù)雜,功能多,改動(dòng)頻繁,實(shí)時(shí)性的內(nèi)容多,就用動(dòng)態(tài)網(wǎng)頁(yè)
LNMP架構(gòu)工作流程用戶發(fā)送http請(qǐng)求到達(dá)http服務(wù)器httpd解析URL獲取需要的資源的路徑,通過(guò)內(nèi)核空間來(lái)讀取硬盤(pán)資源,如果是靜態(tài)資源,則構(gòu)建響應(yīng)報(bào)文發(fā)回給用戶。如果是動(dòng)態(tài)資源,將資源地址發(fā)送給php解析器,解析php程序文件,解析完畢將內(nèi)容發(fā)回給httpd,httpd構(gòu)建響應(yīng)報(bào)文,發(fā)回給用戶。如果涉及到數(shù)據(jù)庫(kù)操作,則利用php-mysql驅(qū)動(dòng),獲取數(shù)據(jù)庫(kù)數(shù)據(jù),返回給PHP解析器。案例利用LNMP+wordpress搭建博客網(wǎng)站
WordPress
一款使用PHP語(yǔ)言開(kāi)發(fā)的博客平臺(tái),用戶可以在支持PHP和MySQL數(shù)據(jù)庫(kù)的服務(wù)器上架設(shè)屬于自己的網(wǎng)站。也可以把 WordPress當(dāng)作一個(gè)內(nèi)容管理系統(tǒng)來(lái)使用。WordPress以上手簡(jiǎn)單、功能強(qiáng)大、擴(kuò)展性與靈活性著稱,加上開(kāi)源免費(fèi),主題插件極其豐富,無(wú)論作為新手學(xué)習(xí)搭建個(gè)人博客,還是專業(yè)用戶用于架設(shè)復(fù)雜的企業(yè)電商網(wǎng)站、論壇等,WP 都能完美滿足需求。你幾乎能用 WP 打造成任何類型的網(wǎng)站,只有想不到,沒(méi)有做不到。而且全球數(shù)以億計(jì)各類知名網(wǎng)站都是基于 WP 構(gòu)建,根據(jù)官方統(tǒng)計(jì),目前全球有 32% 的網(wǎng)站都由 WP 搭建,由于它實(shí)在太過(guò)流行,因此無(wú)論插件、主題、教程、文檔等資源都極其豐富,你選都選不完。而且網(wǎng)上關(guān)于性能優(yōu)化、問(wèn)題解決等討論也非常的全面?;旧蠈W(xué)習(xí)建網(wǎng)站這事,您只需玩轉(zhuǎn) WP 就夠了!所以,如果要建站或想嘗試學(xué)習(xí)建站,那 WP 絕對(duì)值得你優(yōu)先考慮。
wordpress官網(wǎng):https://cn.wordpress.org打開(kāi)可能會(huì)有問(wèn)題 (429錯(cuò)誤),可以去https://ww.wp.xz.cn下載軟件包
環(huán)境介紹
一臺(tái)安裝CentOS8的主機(jī)
關(guān)閉SElinux和防火墻
配置好yum源
掛載光盤(pán)
可以聯(lián)網(wǎng)
wordpress軟件包下載地址:https://ww.wp.xz.cn/latest.zip
流程
step1 部署LNMP架構(gòu)
[root@client ~]# dnf -y install nginx php* mariadb-server mariadb -ystep2 設(shè)置php-fpm
[root@client ~]# vim /etc/php-fpm.d/xintu.conf user = nginxgroup = nginx#php-fpm服務(wù)默認(rèn)以apache用戶啟動(dòng),將啟動(dòng)用戶身份修改nginxstep3 啟動(dòng)服務(wù)
[root@client ~]# systemctl restart nginx.service php-fpm.service mariadb.servicestep4 生成php測(cè)試頁(yè)面
[root@client ~]# echo "<?php phpinfo();?>" >> /usr/share/nginx/html/index.php#系統(tǒng)自帶的nginx的頁(yè)面文件存放在/usr/share/nginx/html/目錄中step5 打開(kāi)瀏覽器測(cè)試
step6
為數(shù)據(jù)庫(kù)設(shè)置密碼并創(chuàng)建相應(yīng)的數(shù)據(jù)庫(kù)
[root@client ~]# mysqladmin -u root password 123456[root@client ~]# mysql -u root -pEnter password: MariaDB [(none)]> create database wordpress charset=utf8;Query OK, 1 row affected (0.001 sec)MariaDB [(none)]> quitByestep7 準(zhǔn)備wordpress
[root@client ~]# cd /usr/share/nginx/html/[root@client html]# rm -fr *#####刪除nginx自帶的頁(yè)面文件,以及剛才測(cè)試生成的php頁(yè)面[root@client ~]# unzip latest-zh_CN.zip [root@client ~]# cd wordpress/[root@client wordpress]# mv * /usr/share/nginx/html/####將wordpress文件移動(dòng)到nginx頁(yè)面文件存放的目錄[root@client wordpress]# cd /usr/share/nginx/html/[root@client html]# chown -R nginx.nginx *###文件的默認(rèn)所有者是root,為了避免權(quán)限的問(wèn)題,將所有者改為nginxstep8 安裝wordpress
復(fù)制提示頁(yè)面內(nèi)容,按照要求手工創(chuàng)建wp-config.php文件并將內(nèi)容粘貼[root@client html]# vim /usr/share/nginx/html/wp-config.php切換到安裝頁(yè)面點(diǎn)擊現(xiàn)在安裝
step9 登錄與用戶注冊(cè)設(shè)置
開(kāi)啟用戶注冊(cè)功能
發(fā)送測(cè)試郵件
注意:公網(wǎng)的郵箱需要在設(shè)置里開(kāi)啟SMTP/POP等功能,再按照提示操作就可以了
收到測(cè)試郵件之后,注銷管理員賬號(hào),返回登錄界面,選擇注冊(cè)
將郵件中的鏈接復(fù)制到瀏覽器中粘貼
如果想在其它主機(jī)可以直接訪問(wèn)而不需要修改URL的話
wordpress打開(kāi)速度慢
有的時(shí)候wordpress訪問(wèn)的時(shí)候會(huì)非常慢,尤其是登錄進(jìn)入后臺(tái)時(shí),主要是因?yàn)閣ordpress應(yīng)用了一些外部的資源,如google的資源;如果你的主機(jī)沒(méi)有聯(lián)網(wǎng),那么打開(kāi)的速度確實(shí)非常的慢,但有時(shí),即便是聯(lián)網(wǎng)也會(huì)由于無(wú)法訪問(wèn)這些外部資源導(dǎo)致速度慢,此時(shí),可以在wordpress中搜索安裝一個(gè)叫“WP Acceleration for China"的加速插件并啟用,將這些無(wú)法訪問(wèn)的外部資源換成國(guó)內(nèi)的相應(yīng)資源。就可以解決訪問(wèn)慢的問(wèn)題
總結(jié)什么是lnmp
lnmp與lamp的區(qū)別
動(dòng)態(tài)網(wǎng)頁(yè)與靜態(tài)網(wǎng)頁(yè)
LNMP的工作流程
如何部署設(shè)置LNMP平臺(tái)
如何在LNMP平臺(tái)上搭建wordpress
重點(diǎn):LNMP架構(gòu)由哪些成員構(gòu)成,動(dòng)態(tài)網(wǎng)頁(yè)與靜態(tài)網(wǎng)頁(yè),LNMP的工作流程,CentOS8上lnmp平臺(tái)的搭建,wordpress的安裝和設(shè)置,實(shí)現(xiàn)用戶注冊(cè)
難點(diǎn):記住LNMP的組成,理解動(dòng)態(tài)網(wǎng)頁(yè)和靜態(tài)網(wǎng)頁(yè)的區(qū)別,記住LNMP的工作流程,記住在lnmp平臺(tái)上需要安裝哪些軟件包,啟動(dòng)哪些服務(wù),修改了哪些配置文件,wordpress平臺(tái)安裝設(shè)置及實(shí)現(xiàn)用戶注冊(cè)
掃描二維碼推送至手機(jī)訪問(wèn)。
版權(quán)聲明:本文由信途科技轉(zhuǎn)載于網(wǎng)絡(luò),如有侵權(quán)聯(lián)系站長(zhǎng)刪除。
轉(zhuǎn)載請(qǐng)注明出處http://macbookprostickers.com/xintu/10056.html