目錄
1 LAMP 配置與應(yīng)用
1.1動(dòng)態(tài)資源與語(yǔ)言
1.2 LAMP 架構(gòu)的組成
1.2.1 主要功能
2 編譯安裝Apache http 服務(wù)
2.1 環(huán)境準(zhǔn)備
2.1.1 關(guān)閉防火墻及selinux服務(wù)
2.1.2?安裝依賴環(huán)境
?2.2 安裝軟件包
2.2.1 解壓軟件包
?2.2.2?移動(dòng)apr包 apr-util包到安裝目錄中,并切換到 httpd-2.4.29目錄中 ??編輯
?2.2.3?編譯安裝
2.3?方便操作建立軟連接
2.4 添加httpd系統(tǒng)服務(wù)
?2.5?編譯安裝mysql
2.5.1?安裝依賴包
2.5.2?解壓軟件包并切換到編譯目錄,并編譯安裝
2.6 編譯安裝php
2.6.1?編譯安裝PHP 解析環(huán)境
2.6.2 配置軟件模塊
2.7 安裝論壇
2.8 blog 搭建
1 LAMP 配置與應(yīng)用
1.1動(dòng)態(tài)資源與語(yǔ)言
WEB 資源類型:
-
靜態(tài)資源:原始形式與響應(yīng)內(nèi)容一致,在客戶端瀏覽器執(zhí)行
-
動(dòng)態(tài)資源:原始形式通常為程序文件,需要在服務(wù)器端執(zhí)行之后,將執(zhí)行結(jié)果返回給客戶端
注意:靜態(tài)和動(dòng)態(tài)的區(qū)別,不在于網(wǎng)頁(yè)是否能動(dòng)態(tài)變化,而在于服務(wù)端的頁(yè)面文件和客戶端得到頁(yè)面文件是否一致
范例:靜態(tài)資源
1.2 LAMP 架構(gòu)的組成
LAM(M)P:
-
L:linux
-
A:apache (httpd)
-
M:mysql, mariadb
-
P:php, perl, python
?LAMP 環(huán)境指的是在 Linux 操作系統(tǒng)中分別安裝 Apache 網(wǎng)頁(yè)服務(wù)器、MySQL 數(shù)據(jù)庫(kù)服務(wù)器和 PHP 開(kāi)發(fā)服務(wù)器,以及一些對(duì)應(yīng)的擴(kuò)展軟件。AMP也支持win操作系統(tǒng) (sccm 域升級(jí)版)
LAMP架構(gòu)是目前成熟的企業(yè)網(wǎng)站應(yīng)用模式之一,指的是協(xié)同工作的一整套系統(tǒng)和相關(guān)軟件,能夠提供動(dòng)態(tài)web站點(diǎn)服務(wù)及其應(yīng)用開(kāi)發(fā)環(huán)境。
- (前臺(tái))Apache:
作為L(zhǎng)AMP架構(gòu)的前端,是一款功能強(qiáng)大,穩(wěn)定性好的web服務(wù)器程序,該服務(wù)器直接面向用戶提供網(wǎng)站訪問(wèn),發(fā)送網(wǎng)頁(yè),圖片等內(nèi)容。
- 后臺(tái)Mysql:
作為L(zhǎng)AMP架構(gòu)的后端,是一款流行的開(kāi)源關(guān)系型數(shù)據(jù)庫(kù)。在企業(yè)網(wǎng)站、業(yè)務(wù)系統(tǒng)應(yīng)用中,各種賬戶信息、產(chǎn)品信息,客戶資料、業(yè)務(wù)數(shù)據(jù)等都可以存儲(chǔ)到mysql數(shù)據(jù)庫(kù),其他程序可以通過(guò)sql語(yǔ)句來(lái)查詢,更改這些信息。
- (中間連接)PHP/Perl/Python:
作為三種開(kāi)發(fā)動(dòng)態(tài)的網(wǎng)頁(yè)編程語(yǔ)言,負(fù)責(zé)解釋動(dòng)態(tài)網(wǎng)頁(yè)文件,負(fù)責(zé)溝通web服務(wù)器和數(shù)據(jù)庫(kù)系統(tǒng)已協(xié)同工作,并提供web應(yīng)用程序的開(kāi)發(fā)運(yùn)行環(huán)境。其中PHP是一種廣泛應(yīng)用的開(kāi)放源代碼的多用途腳本語(yǔ)言,它可以嵌入到HTML中,尤其適合于web應(yīng)用開(kāi)發(fā)。
在構(gòu)建LAMP平臺(tái)時(shí),各組件的安裝順序依次為L(zhǎng)inux,Apache,MySQL,PHP,其中Apache和MySQL的安裝并沒(méi)有嚴(yán)格的順序要求,而PHP環(huán)境的安裝一般放到最后,負(fù)責(zé)溝通web服務(wù)器和數(shù)據(jù)庫(kù)系統(tǒng)以協(xié)同工作
1.2.1 主要功能
apache主要實(shí)現(xiàn)如下功能:
-
第一:處理http的請(qǐng)求、構(gòu)建響應(yīng)報(bào)文等自身服務(wù);
-
第二:配置讓Apache支持PHP程序的響應(yīng)(通過(guò)PHP模塊或FPM);
-
第三:配置Apache具體處理php程序的方法,如通過(guò)反向代理將php程序交給fcgi處理。
mysql 主要實(shí)現(xiàn)如下功能:
-
第一:提供PHP程序?qū)?shù)據(jù)的存儲(chǔ);
-
第二:提供PHP程序?qū)?shù)據(jù)的讀取(通常情況下從性能的角度考慮,盡量實(shí)現(xiàn)數(shù)據(jù)庫(kù)的讀寫(xiě)分離)。
php主要實(shí)現(xiàn)如下功能:
- 第一:提供apache的訪問(wèn)接口,即CGI或Fast CGI(FPM);
- 第二:提供PHP程序的解釋器;
- 第三:提供mysql數(shù)據(jù)庫(kù)的連接函數(shù)的基本環(huán)境。
2 編譯安裝Apache http 服務(wù)
2.1 環(huán)境準(zhǔn)備
2.1.1 關(guān)閉防火墻及selinux服務(wù)
systemctl stop firewalld.service ## 關(guān)閉防火墻
setenforce 0 ## 關(guān)閉selinux
2.1.2?安裝依賴環(huán)境
yum install -y\
gcc \ #c語(yǔ)言編譯器
gcc-c++ \ #c編譯器
make \ #源代碼編譯器
pcre\ #pcre函數(shù)庫(kù)
pcre-devel \ #pcre接口開(kāi)發(fā)包
expat-devel \ #用于支持網(wǎng)站解析HTML、XML文件
perl #perl 語(yǔ)言編譯器
?2.2 安裝軟件包
2.2.1 解壓軟件包
?2.2.2?移動(dòng)apr包 apr-util包到安裝目錄中,并切換到 httpd-2.4.29目錄中 ?
?2.2.3?編譯安裝
./configure \
--prefix=/usr/local/httpd \ #指定httpd的安裝目錄
--enable-so \ #啟用動(dòng)態(tài)加載模塊支持,使httpd具備進(jìn)一步擴(kuò)展功能的能力
--enable-rewrite \ #啟用網(wǎng)頁(yè)地址的重寫(xiě)功能,用于網(wǎng)站優(yōu)化、防盜鏈及目錄遷移維護(hù)
--enable-charset-lite \ #啟用字符集支持,以便支持使用各種字符集編碼的頁(yè)面
--enable-cgi #啟用CGI(通用網(wǎng)關(guān)接口)腳本程序支持,便于網(wǎng)站外部擴(kuò)展應(yīng)用訪問(wèn)的能力
./config
make
make install
2.3?方便操作建立軟連接
2.4 添加httpd系統(tǒng)服務(wù)
啟動(dòng)服務(wù)
?2.5?編譯安裝mysql
2.5.1?安裝依賴包
yum -y install \
ncurses \ #字符終端下圖形互動(dòng)功能的動(dòng)態(tài)庫(kù)
ncurses-devel \ #ncurses開(kāi)發(fā)包
bison \ #語(yǔ)法分析器
cmake #mysql需要用到的cmake編譯安裝包
2.5.2?解壓軟件包并切換到編譯目錄,并編譯安裝
解壓
####配置選項(xiàng)含義###
1、DCMAKE_INSTALL_PREFIX:指定將 mysql 數(shù)據(jù)庫(kù)程序安裝到某目錄下,
如目錄/usr/local/ mysql。
2、DMYSQL_UNIX_ADDR:指定套接字文件的存儲(chǔ)路徑,數(shù)據(jù)庫(kù)連接的文件
3、DSYSCONFDIR:指定初始化參數(shù)文件目錄
3、DDEFAULT_CHARSET:指定默認(rèn)使用的字符集編碼,如 utf8。
5、DDEFAULT_COLLATION:指定默認(rèn)使用的字符集校對(duì)規(guī)則,utf8_general_ci 是適用于 UTF-8 字符集的通用規(guī)則。
6、DWITH_INNOBASE_STORAGE_ENGINE=1 :安裝INNOBASE存儲(chǔ)引擎
7、DWITH_ARCHIVE_STORAGE_ENGINE=1 :安裝ARCHIVE存儲(chǔ)引擎?
8、DWITH_BLACKHOLE_STORAGE_ENGINE=1 :安裝BLACKHOLE存儲(chǔ)引擎?
9、DWITH_PERFSCHEMA_STORAGE_ENGINE :安裝FEDERATED存儲(chǔ)引擎?指定安裝文件的安裝路徑時(shí)常用的選項(xiàng):
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql ? ? ? ? 指定安裝路徑?
-DMYSQL_DATADIR=/data/mysql ? ? ? ? ? ? ? ? ? ? 數(shù)據(jù)安裝路徑?
-DSYSCONFDIR=/etc ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 配置文件的安裝路徑由于MySQL支持很多的存儲(chǔ)引擎而默認(rèn)編譯的存儲(chǔ)引擎包括:csv、myisam、myisammrg和heap。若要安裝其它存儲(chǔ)引擎,可以使用類似如下編譯選項(xiàng):
-DWITH_INNOBASE_STORAGE_ENGINE=1 ? ? ? ? ?安裝INNOBASE存儲(chǔ)引擎?
-DWITH_ARCHIVE_STORAGE_ENGINE=1 ? ? ? ? ? 安裝ARCHIVE存儲(chǔ)引擎?
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 ? ? ? ? 安裝BLACKHOLE存儲(chǔ)引擎?
-DWITH_FEDERATED_STORAGE_ENGINE=1 ? ? ? ? 安裝FEDERATED存儲(chǔ)引擎?
若要明確指定不編譯某存儲(chǔ)引擎,可以使用類似如下的選項(xiàng):-DWITHOUT_<ENGINE>_STORAGE_ENGINE=1?
比如:
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 ? ? ? ?不啟用或不編譯EXAMPLE存儲(chǔ)引擎?
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1?
?-DWITHOUT_PARTITION_STORAGE_ENGINE=1如若要編譯進(jìn)其它功能,如SSL等,則可使用類似如下選項(xiàng)來(lái)實(shí)現(xiàn)編譯時(shí)使用某庫(kù)或不使用某庫(kù):
-DWITH_READLINE=1?
?-DWITH_SSL=system ? ? ? ? ? 表示使用系統(tǒng)上的自帶的SSL庫(kù)?
-DWITH_ZLIB=system?
?-DWITH_LIBWRAP=0其它常用的選項(xiàng):
-DMYSQL_TCP_PORT=3306 ? ? ? ? ? ? ? ? ? ? ? 設(shè)置默認(rèn)端口的?
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock ? ? ? ? ? MySQL進(jìn)程間通信的套接字的位置?
-DENABLED_LOCAL_INFILE=1 ? ? ? ? ? ? ? ? ? ?是否啟動(dòng)本地的LOCAL_INFILE?
?-DEXTRA_CHARSETS=all ? ? ? ? ? ? ? ? ? ? ? ?支持哪些額外的字符集?
-DDEFAULT_CHARSET=utf8 ? ? ? ? ? ? ? ? ? ? ?默認(rèn)字符集?
-DDEFAULT_COLLATION=utf8_general_ci ? ? ? ? 默認(rèn)的字符集排序規(guī)則?
-DWITH_DEBUG=0 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?是否啟動(dòng)DEBUG功能?
-DENABLE_PROFILING=1 ? ? ? ? ? ? ? ? ? ? ? ?是否啟用性能分析功能##################################################################################################
------注意:如果在CMAKE的過(guò)程中有報(bào)錯(cuò)---
? ? ? ? 當(dāng)報(bào)錯(cuò)解決后,需要把源碼目錄中的CMakeCache.txt文件刪除,然后再重新CMAKE,否則錯(cuò)誤依舊
------注意:make: *** No targets specified and no makefile found. Stop.解決方法
? ? ? ? 1、wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.6.tar.gz
? ? ? ? 2.、tar zxvf ncurses-5.6.tar.gz
? ? ? ? 3、 ./configure -prefix=/usr/local -with-shared-without-debug
? ? ? ? 4、make
? ? ? ? 5、make install###############################################################################################
?
編譯安裝
?耐心等待約20min......
數(shù)據(jù)庫(kù)目錄進(jìn)行權(quán)限調(diào)整
建立調(diào)整配置文件
設(shè)置環(huán)境變量
剛開(kāi)始沒(méi)密碼是空的直接回車(chē),然后輸入密碼abc123,在此確認(rèn)abc123,這是在root賬戶下運(yùn)行的
2.6 編譯安裝php
2.6.1?編譯安裝PHP 解析環(huán)境
安裝GD庫(kù)和GD庫(kù)關(guān)聯(lián)程序,用來(lái)處理和生成圖片
2.6.2 配置軟件模塊
./configure \
--prefix=/usr/local/php7 \ 指定將 PHP 程序的安裝路徑
--with-apxs2=/usr/local/httpd/bin/apxs \ 指定Apache httpd服務(wù)提供的apxs 模塊支持程序的文件位置
--with-mysql-sock=/usr/local/mysql/mysql.sock \ 指定mysql 數(shù)據(jù)庫(kù)連接文件的存儲(chǔ)路徑
--with-config-file-path=/usr/local/php7 設(shè)置 PHP 的配置文件 php.ini 將要存放的位置
--with-mysqli \ 添加 MySQL 擴(kuò)展支持 #mysqli擴(kuò)展技術(shù)不僅可以調(diào)用MySQL的存儲(chǔ)過(guò)程、處理MySQL事務(wù),而且還可以使訪問(wèn)數(shù)據(jù)庫(kù)工作變得更加穩(wěn)定
--with-zlib \ 支持zlib功能,提供數(shù)據(jù)壓縮
--with-curl \ 開(kāi)啟curl擴(kuò)展功能,實(shí)現(xiàn)HTTP的Get下載和Post請(qǐng)求的方法
--with-gd \ 激活gd 庫(kù)的支持
--with-jpeg-dir \ 激活jpeg 的支持
--with-png-dir \ 激活png 的支持
--with-freetype-dir \
--with-openssl \
--enable-mbstring \ 啟用多字節(jié)字符串功能,以便支持中文等代碼
--enable-xml \ 開(kāi)啟擴(kuò)展性標(biāo)記語(yǔ)言模塊
--enable-session \ 會(huì)話
--enable-ftp \ 文本傳輸協(xié)議
--enable-pdo \ 函數(shù)庫(kù)
--enable-tokenizer \ 令牌解釋器
--enable-zip ZIP壓縮格式
編譯及安裝
復(fù)制模版文件作為PHP 的主配置文件,并進(jìn)行修改
?在測(cè)試環(huán)境時(shí)使用php.ini-development文件,而在生產(chǎn)環(huán)境時(shí)使用php.ini-production文件
?
優(yōu)化把PHP 的可執(zhí)行程序文件放入路徑環(huán)境變量的目錄中便于系統(tǒng)識(shí)別
修改httpd 服務(wù)的配置文件,讓apache支持PHP
##vim /etc/httpd.conf?
驗(yàn)證PHP 測(cè)試頁(yè)
重啟httpd服務(wù)
測(cè)試
2.7 安裝論壇
解壓
?
圖形化安裝
?
?
?論壇搭建完成
2.8 blog 搭建
解壓
?Ctrl +d 退出
測(cè)試
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-673796.html
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-673796.html
到了這里,關(guān)于LAMP 架構(gòu)及Discuz論壇與Wordpress博客搭建的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!