1.LAMP簡介
lamp是互聯(lián)網(wǎng)上一套最基本的軟件組合搭配起來的環(huán)境,用來實(shí)現(xiàn)網(wǎng)絡(luò)服務(wù),大家表面上看到用瀏覽器上網(wǎng),后臺(tái)就是N臺(tái)服務(wù)器在跑著這一套環(huán)境,當(dāng)然技術(shù)在變遷,現(xiàn)在大部分互聯(lián)網(wǎng)公司所用的環(huán)境非常復(fù)雜,但根本都是這原理,就連有著最頂級(jí)復(fù)雜環(huán)境的淘寶在十年前,也是從一臺(tái)服務(wù)器上跑著LAMP開始,發(fā)揮到現(xiàn)在的幾萬臺(tái)服務(wù)器一起
L:服務(wù)器的最基本操作系統(tǒng),Linux
A: 提供web服務(wù)的最知名軟件,apache; 現(xiàn)在有更高性能的,比較流行的nginx,所有現(xiàn)在經(jīng)常看到組合是lnmp
M:mysql,與mariadb之類的數(shù)據(jù)庫系統(tǒng)
P:php,perl,python等后臺(tái)編程語言
2.實(shí)驗(yàn)環(huán)境
這里用最新版centos7.3系統(tǒng)做為實(shí)驗(yàn)環(huán)境,如果不愛折騰,只是為了搭一個(gè)個(gè)人博客網(wǎng)站 ,那下面內(nèi)容對(duì)你沒有用,你可以安裝系統(tǒng)集成好的所有軟件 ,就是版本比較舊,然后自己去阿里云買域名,云主機(jī),按著網(wǎng)上現(xiàn)成的操作,很快就能搭建出一個(gè)漂亮的個(gè)人博客
去各大官網(wǎng)下載最新版的原碼包
httpd-2.4.27.tar.bz2 mariadb-10.2.7-linux-x86_64.tar php-7.1.7.tar.bz2 wordpress-4.8-zh_CN.tar.gz
下載地址可以百度,如果第一步原碼包都下不了,后面的可以不看了,步驟很煩鎖,起碼的動(dòng)手能力肯定要有
編譯apache
- 解壓原碼包 tar xvf httpd-2.4.27.tar.bz2
- 準(zhǔn)備基礎(chǔ)包pcre-devel openssl-devel development toos,在編譯過程中如果提示出錯(cuò),少什么包再裝什么包
- 進(jìn)到解壓好的文件httpd-2.4.27文件中,執(zhí)行下面的代碼
- ./configure --prefix=/usr/local/http24 --sysconfdir=/etc/httpd24 --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork這里都是定義的關(guān)于這個(gè)軟件的一些特性,比如啟用什么功能,官方文檔上都有介紹,也可以直接復(fù)制這個(gè)

Paste_Image.png
- 提示出錯(cuò),安裝二個(gè)包即可yum -y install apr-devel apr-util-devel
- 然后再重復(fù)執(zhí)行上面那代碼,此時(shí)只要你系統(tǒng)不是基于最小化安裝,那應(yīng)該就沒有問題了
- make && make install 編譯即可
- 關(guān)閉防火墻iptables -F ,與禁用setenforce 0 ;進(jìn)行測(cè)試httpd服務(wù),沒有問題。
二進(jìn)制編譯mariadb
- 同樣的先解壓,這次是二進(jìn)制編譯,所有解壓路徑必須是/usr/local
- 創(chuàng)建軟鏈接ln -s maridb-10.2.7-linux-x86 mysql
- 修改權(quán)限 chown -R .mysql mysql/*
- 創(chuàng)建用戶mysql useradd -r mysql -s /sbin/nologin -d /app/mysqldb -m
- 運(yùn)行安裝腳本scripts/mysql_install_db --datadir=/app/mysqldb --user=mysql
- 創(chuàng)建配置文件mkdir /etc/mysql
- cp support-files/my-huge.cnf /etc/mysql/my.cnf并修改以下地方

Paste_Image.png
- cp support-files/mysql.server /etc/init.d/mysqld復(fù)制樣本并創(chuàng)建啟動(dòng)腳本
- 將執(zhí)行程序路徑加入到/etc/profile.d/app.sh中
- mkdir /var/log/mariadb/ touch /var/log/mariadb/mariadb.log chown mysql /var/log/mariadb/mariadb.log
- service mysqld start啟動(dòng)數(shù)據(jù)庫成功
- 登錄數(shù)據(jù)庫為將來用到的軟件wordpress創(chuàng)建表單,與帳號(hào)
- create database blogdb;
- grant all on blogdb.* to wpuser@'172.16.%.%' identified by "123456";
編譯php
- 老步驟,先解壓
- 安裝需求包,省的一會(huì)報(bào)錯(cuò)yum -y install libxm12-devel bzip2-devel libmcrypt-devel
- 進(jìn)到該目錄中執(zhí)行下面代碼,同樣是一些特性定義
- ./configure --prefix=/app/php --enable-mysqlnd --with-mysqli=mysqlnd --with-openssl --enable-mbstring --with-png-dir --with-jpeg-dir --with-freetype-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --with-apxs2=/app/httpd24/bin/apxs --with-mcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2
- make && make install
- cp php.ini-production /etc/php.ini復(fù)制模板作為Php的配置文件
- 修改appache的配置文件/etc/httpd24/httpd.conf添加下面的內(nèi)容
- addtype application/x-httpd-php .php
- addtype application/x-httpd-php-source .phps
- 最后重啟服務(wù),寫一段php代碼,測(cè)試apache---php---mysql三者的連通性
- vim /app/httpd24/htdocs/index.php
<?php
$mysqli=new mysqli("172.16.28.28","wpuser","123456");
if(mysqli_connect_errno()){
echo "連接數(shù)據(jù)庫失敗!";
$mysqli=null;
exit;
}
echo "連接數(shù)據(jù)庫成功!";
$mysqli->close();
?> - 重啟服務(wù)
- 連接成功
部署wordpress應(yīng)用
- 前面工作都順利完成的話,那環(huán)境已搭建完成了,下面就是在這環(huán)境之上部署應(yīng)用了,下載最新版wordpress
- 給apache帳號(hào)添加訪問wordpress目錄的權(quán)限
- setfacl -m u:apache:rwx bg/

Paste_Image.png
- 根據(jù)向?qū)瓿勺?cè),結(jié)束??!