CentOS 7, apm + xcache, rpm包, php module;
a) 一個虛拟主機提供phpMyAdmin,另一個虛拟主機提供wordpress;
b) 為phpMyAdmim提供https服務;
主機IP:172.16.72.5
關閉該主機防火牆:
iptables -F
setenforce 0
安裝php,mariadb,httpd
啟動服務:
配置wordpress:
使用mysql指令:
進入資料庫,建立資料庫wpdb,并給該資料庫建立使用者,給使用者給予操作權限
将wordpress中的wp-config-sample.php複制為wp-config.php并修改其配置檔案為:
在/myweb/vhosts/www1中建構index.php測試php是否能連接配接
結果可連接配接:
通路wordpress
wordpress配置成功;
配置phpMyAdmin:
在/etc/httpd/conf.d/ssl.conf下配置phpMyAdmin與其https
在本台主機上生成私鑰與證書請求檔案,并将證書請求檔案發往私人CA處:
#(umask 077;openssl genrsa -out /etc/httpd/conf/ssl/httpd.key 4096)
#openssl req -new -key /etc/httpd/conf/ssl/httpd.key -out /etc/httpd/conf/ssl/httpd.csr
-days 365
#scp /etc/httpd/conf/ssl/httpd.csr 172.16.72.1:/tmp
172.16.72.1私人CA處:
生成私人CA:
#(umask 077;openssl genrsa -out /etc/pki/CA/private/cakey.pem 4096)
#openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem
-days 365
#openssl ca -in /tmp/httpd.csr -out /tmp/httpd.crt
注意:私人CA的位址要與用戶端證書請求檔案一緻;
https通路靜态頁面,測試php連通性:
将phpMyAdmin導入/myweb/vhosts/www2下
直接通路:
xcache安裝:
可以編譯安裝,也可以聯網使用yum源安裝
yum install php-xcache
編輯/etc/php.d/xcache.ini
CentOS 7, amp + xcache, rpm包,php-fpm;
a) httpd, php, mariadb分别部署在一個單獨的主機上;
b) 一個虛拟主機提供phpMyAdmin,另一個虛拟主機提供wordpress;
c) 為phpMyAdmim提供https服務;
httpd的主機:172.16.72.5
php-fpm的主機:172.16.72.2
Mariadb的主機:172.16.72.9
①部署httpd
關閉該主機防火牆:
iptables -F
setenforce 0
使用本地CD光牒中的安裝包安裝httpd
yum install httpd
httpd配置如上,開啟反向代理,設定過濾器match過濾,将php的動态頁面由172.16.72.2的主機
通路;
重新加載httpd服務systemctl reload httpd.service
②部署php-fpm
iptables -F
setenforce 0
安裝php-fpm
yum install php-fpm
安裝php與mysql互動的php-mysql
yum install php-mysql
在該php-fpm主機上,建構在httpd配置檔案中對應的映射路徑/myweb/vhosts/www1
mkdir -pv /myweb/vhosts/www1
listen = 172.16.72.2:9000 (監控本機IP位址)
listen.allowed_clients = 172.16.72.5 (監控httpd用戶端傳來的請求)
映射路徑下建構index.php,并将wordpress導入
index.php:測試httpd主機與php主機的連通性
測試結果:通路httpd主機,可以通路到php主機
安裝wordpress:
#cd wordpress
#cp wp-config-sample.php wp-config.php
#vim wp-config.php
設定wordpress資料庫資訊
172.16.72.9為第三個Mariadb主機的IP位址
③部署Mariadb
關閉防火牆:
安裝Mariadb
#yum install mariadb-server
#mysql (進入mysql界面)
給使用者設定通路權限:
通路結果:
安裝phpMyAdmin:
設定https:
在/etc/httpd/conf.d/ssl.conf中設定
www2中的靜态資源:
關閉防火牆:
iptables -F
setenforce 0
重載httpd:
systemctl reload httpd.service
httpd主機中的phpadmin虛拟主機通路自身靜态資源結果:
将phpMyAdmin導入到第二台主機的/etc/myweb/www2目錄下
通路phpMyAdmin
CentOS 7, amp + xcache,編譯安裝,php-fpm;
a) httpd, php, mariadb分别部署在一個單獨的主機上,以及都在同一主機;
b) 一個虛拟主機提供phpMyAdmin,另一個虛拟主機提供wordpress;
c) 為phpMyAdmim提供https服務;
編譯安裝httpd,php,mariadb在同一主機上:
關閉防火牆:
确定在該主機上沒有使用rpm包的形式安裝過php,php-fpm,mariadb-server,mysql-server, httpd
安裝編譯環境:
yum groupinstall "Development Tools" "Server Platform Development"
編譯安裝apr-1.5.2:
将apr-1.5.2,apr-util-1.5.4,httpd-2.4.27導入到主機中,并解壓
#cd apr-1.5.2
#./configure --prefix=/usr/local/apr152
#make -j 4
#make install
編譯安裝apr-util-1.5.4:
#tar xf apr-util-1.5.4.tar.gz
#cd apr-util-1.5.4
#./configure --prefix=/usr/local/apr-util154 --with-apr=/usr/local/apr152
#make -j #
編譯安裝httpd-2.4.27:
#tar xf httpd-2.4.27.tar.gz
#cd httpd-2.4.27
#./configure --prefix=/usr/local/apache24 --with-apr=/usr/local/apr152 --with-apr- util=/usr/local/apr-util154 --sysconfdir=/etc/httpd24 --enable-so --enable-ssl -- enable-cgi --enable-rewrite --enable-modules=most --enable-mpms-shared=all --with- mpm=prefork --with-pcre --with-zlib
# make install
注意:需要實作安裝pcre-devel,當時用--with-pcre時
yum install pcre-devel
若出現mod_ssl缺失,則安裝openssl-devel
yum install openssl-devel
導出二進制檔案:在/etc/profile.d下
. /etc/profile.d/httpd24.sh
使檔案生效,并檢視
輸出PATH變量,可看出,該檔案中的環境變量已生效
因為在/usr/local/apache24下沒有lib等庫檔案,是以不需要導出庫檔案;
導出頭檔案:
啟動httpd:
編譯安裝MariaDB:
将mariadb-5.5.57-linux-x86_64.tar.gz導入
#tar -xf mariadb-5.5.57-linux-x86_64.tar.gz -C /usr/local
#cd /usr/local
#ln -sv mariadb-5.5.57-linux-x86_64 mysql
#cd mysql
#groupadd -r -g 306 mysql
#useradd -r -u 306 mysql
#chown -R mysql:mysql *
#mkdir -pv /mydata/data
#chown mysql:mysql /mydata/data
#cp support-file/my-large.cnf /etc/my.cnf
#cp support-file/mysql-server /etc/init.d/mysqld
修改/etc/my.cnf配置檔案
導出二進制檔案:/etc/profile.d/mariadb5557.sh
export PATH=/usr/local/mysql/bin:$PATH
導出庫檔案:/etc/ld.so.conf.d/mariadb5557.conf
/usr/local/mysql/lib
ldconfig -v
并将/etc/ld.so.conf.d/中的mariadb-x86_64.conf改成不以conf結尾的;
初始化資料庫:
scripts/mysql_install_db --user=mysql --datadir=/mydata/data
啟動資料庫:
service mysqld start
編譯php:
将php-5.6.31.tar.bz2導入
#tar -xf php-5.6.31.tar.bz2
#cd php-5.6.31
#./configure --prefix=/usr/local/php56 --enable-fpm --with-mysql=/usr/local/mysql -- with-mysqli=/usr/local/mysql/bin/mysql_config --with-openssl --enable-mbstring -- enable-xml --enable-sockets --with-freetype-dir --with-libxml-dir=/usr --with-zlib -- with-apxs2=/usr/local/apache24/bin/apxs --with-config-file-path=/etc/php56.ini -- with-config-file-scan-dir=/etc/php56.d
#make -j 4
#make install
#cp php.ini-production /etc/php56.ini
#mkdir /etc/php56.d
#cp sapi/fpm/php-fpm.conf /etc/php56.d
#vim /etc/profile.d/php56.sh
導出二進制檔案
export PATH=/usr/local/php56/bin:/usr/local/php56/sbin:$PATH
#. /etc/profile.d/php56.sh将其寫入
導出庫檔案
#vim /etc/ld.so.conf.d/php56.conf
/usr/local/php56/lib
#ldconfig -v
導出頭檔案
#ln -sv /usr/local/php56/include /usr/include/php-fpm
到這步php-fpm就可以執行了;
使用#php-fpm -y /etc/php56.d/php-fpm.conf start
注意:在啟動前,務必将程序php-fpm關閉,否則啟動會失敗
為php-fpm提供SysV風格腳本,并将其添加至服務清單:
# cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
# chmod +x /etc/rc.d/init.d/php-fpm
# chkconfig --add php-fpm
# chkconfig php-fpm on
在/etc/rc.d/init.d/php-fpm下寫入:
執行:
至此httpd,mariadb,php-fpm全部編譯完成;
在編譯環境下安裝wordpress:
将wordpress安裝包導入,解壓
httpd配置
虛拟主機配置,将虛拟主機寫入/etc/httpd24/extra/httpd-vhostsconf
如果直接這麼寫,httpd會報文法錯誤proxy,需要将/etc/httpd24/httpd.conf主配置檔案中的
proxy_module和proxy_http的注釋消除,使其執行
mariadb配置:
建立wordpress資料庫,并設定使用者權限;
将wordpress中的wp-config-sample.php備份改名;
#cp wp-config-sample.php wp-config.php
修改wp-config.php的配置
在/myweb/vhosts/www1中寫入一個index.php檔案測試php,httpd,mariadb的連通性
連通性沒有問題,通路wordpress進行安裝;
通路成功
安裝phpMyAdmin:
配置https:
生成私人CA:這裡就不過多闡述了,上面都說過很多次了;
将證書請求檔案返還到用戶端:
修改主配置檔案/etc/httpd/httpd.conf
将https相關代碼寫在/etc/httpd/extra/httpd-ssl.conf
重新開機httpd服務
apachectl restart
将私人CA的公鑰導入浏覽器
通路phpMyAdmin
将httpd,mariadb,php-fpm分别便宜到三台主機上,第一台虛拟主機實作wordpress,第二台主機實作phpMyAdmin和其https功能;
編譯httpd在172.16.72.4主機上:
yum install pcre-devel zlib-devel openssldevel apr-devel apr-util-devel
在httpd中的/etc/httpd24/extra/httpd-vhosts.conf中
wordpress相關配置檔案
phpMyAdmin相關配置在/etc/httpd24/httpd.ssl.conf
編譯php-fpm在172.16.72.5主機上,該主機上已經編譯了httpd,mariadb,編譯方式如上;
修改編譯後的php-fpm的主配置檔案,讓其能夠接收到172.16.72.4主機上發過來的httpd請求;
在/etc/php56.d/php-fpm.conf中
監聽172.16.72.4主機發來的請求:
測試172.16.72.4主機是否能通路到172.16.72.5主機中的index.php
172.16.72.5中:
測試結果:
編譯Mariadb在172.16.72.9主機上:
編譯方法如上;
編譯成功後建立wordpress的資料庫,以及使用該資料庫的使用者和密碼,使用者的權限;
在172.16.72.5主機上導入wordpress安裝包,修改其配置檔案
cp wp-config-sample.php wp-config.php
修改wp-config.php
将MySQL主機指向172.16.72.9主機中的mariadb;
到此wordpress配置結束;
重載三個主機的相關配置;
通路wordpress進行安裝:
www.wujunqi.com/wordpress/index.php
設定https的phpMyAdmin
将phpMyAdmin導入172.16.72.5主機中
之前已經在httpd的172.16.72.4主機中的httpd-ssl.conf中設定https相關代碼;以之前從私人CA,即172.16.72.9主機上擷取的請求證書,将其導入浏覽器中;直接通路即可;
谷歌浏覽器中的證書導入:
直接通路即可:
本文轉自 wujunqi1996 51CTO部落格,原文連結:http://blog.51cto.com/12480612/1965834