lamp+nfs搭建wordpress

一、前言

lamp是大多上公司常用的架構,本文將針對分離式的lamp+nfs來搭建一個簡單的wordpress網站。

二、架構圖

1.png

三、基本實現過程

3.1:dns搭建

由于這這是一個實驗,故使用yum搭建dns服務器

yum install -y bind

配置如下

dns主配置文件

blob.png

dns輔助配置文件

blob.png

zone文件

blob.png

對所有服務器設置dns

blob.png

3.2:httpd服務器搭建

采用源碼包編譯安裝,其中web1和web2搭建方式一致,故不啰嗦再貼圖

安裝一些必須軟件

yum groupinstall -y  "Development tools"  “Server Platform Development”    #安裝一些必須的軟件包
cd apr-1.5.0
./configure --prefix=/data/apr                                                        #編譯安裝apr
make && make install
cd ../apr-util-1.5.3    
./configure --prefix=/data/apr-util --with-apr=/data/apr                            #編譯安裝apr-util
make && make install

編譯安裝httpd

./configure --prefix=/data/http --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/data/apr --with-apr-util=/data/apr-util --enable-modules=most --enable-mpms-shared=all --with-mpm=event --enable-proxy --enable-proxy-fcgi
make && make install

安裝之后啟動無報錯提示,但實際未啟動,查看日志文件

blob.png

未加載mod_slotmem_shm.so模塊,加載之后成功啟動

LoadModule slotmem_shm_module modules/mod_slotmem_shm.so            #加載此模塊

啟動httpd服務

blob.png

3.3:安裝php

先安裝 libmcryt軟件包

./configure --prefix=/data/libmcrypt                    #啟用php服務器啟用mcrypt需要安裝此軟件包
make && make install
cd /tmp/php-5.4.26
./configure --prefix=/data/php --with-mysql=mysqlnd --with-openssl --with-mysqli=mysqlnd --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml  --enable-sockets --enable-fpm --with-mcrypt=/data/libmcrypt  --with-config-file-scan-dir=/data/php/php.d --with-bz2
make && make install
cp php.ini-production /data/php/lib/php.ini                    #復制php.ini文件
cp sapi/fpm/php-fpm /etc/rc.d/init.d/php-fpm                    #復制腳本文件
chmod +x /etc/rc.d/init.d/php-fpm
chkconfig --add php-fpm
cp /data/php/etc/{php-fpm.conf.default,php-fpm.conf}            #復制一份php-fpm.conf文件

修改偵聽端口

listen = 192.168.19.137:9000                    #修改偵聽套接字

查詢安裝是否成功

blob.png

安裝xcache

./configure --with-php-config=/data/php/bin/php-config --enable-xcache            #可選擇不安裝此軟件,對實驗無影響
make && make install
mkdir /data/php/php.d
cp xcache.ini /data/php/php.d                    #copy到php會加載的配置目錄中來,否則需要把xcache.ini內容導入php.ini文件中

修改xcache.ini文件,加載xcache.so模塊

blob.png

3.4:搭建nfs

yum install -y nfs-utils

啟動nfs服務和rpcbind服務

blob.png

mkdir /data/web
把wordpress內容放入/data/web里
cp -R wordpress /data/web

exportfs文件

blob.png

3.5:mysqld搭建

采用二進制包安裝

cp -R mysql-5.6.24-linux-glibc2.5-x86_64 /data/mysql
id mysql                                                    #由于以前有建立mysql用戶,故此實驗直接使用它
uid=495(mysql) gid=502(mysql) groups=502(mysql)
chown -R :mysql /data/mysql

初始化數據庫

cd /data/mysql
scripts/mysql_install_db --basedir=/data/mysql --datadir=/db  --user=mysql        #初始化數據庫
cp support-files/mysql.server /etc/init.d/mysqld                                    #copy數據庫啟動腳本

其中/etc/my.cnf修改如下

blob.png

對數據庫進行一些簡要設置

/data/mysql/bin/mysql_secure_installation                            #主要設置root密碼,移除test實例等
service mysqld start

blob.png

3.6:掛載nfs文件(web1和web2)                            

blob.png

3.7:整合http+php+nfs

blob.png

創建虛擬機

blob.png

3.8:建立網站數據庫

blob.png

四、測試

訪問www.leon.com網站

blob.png

報錯,無法創建wp-config文件

blob.png

修改/data/web權限

在web服務器或nfs服務器上修改

chmod -R o+w webweb                    #偷懶,直接給other寫權限,線上環境就設置facl

訪問正常

blob.png

五、總結

搭建過程中出現了較多問題,有些非常莫名其妙。排錯過程中查看日志很重要,如搭建httpd服務時,只因一個模塊未加載,導致啟動httpd服務時,命令執行狀態為真,命令行中未返回報錯信息。測試端口時才發現為偵聽。對于httpd的fastcgi尚有些理解誤區,導致把網站文件放在httpd服務器上,php中未放置。結果一直提示404錯誤。

原創文章,作者:成吉思汗,如若轉載,請注明出處:http://www.www58058.com/8814

(0)
成吉思汗成吉思汗
上一篇 2015-10-15 16:38
下一篇 2015-10-18 19:23

相關推薦

  • 網絡基礎命令與配置文件地址

    centos6查看網卡dmesg | grep -i ethethtool -i eth0卸載網卡驅動modprobe -r e1000rmmod e1000裝載網卡驅動modprobe e1000網絡配置,靜態指定system-config-network-tui 字符界面式網絡配置ip addr add IP地址 via 網關IP地址動態分配在/etc/…

    2017-09-09
  • N25-第二周博客作業

    第二周博客作業 1.Linux上的文件管理類命令都有哪些,其常用的使用方法和演示 2.bash的工作特性之命令執行狀態返回值和命令行展開所涉及內容演示及其實例 3.請使用命令行展開功能完成以下練習;    (1)創建/tmp的目錄下a_c,a_d,b_c,b_d     (2) 創建/tmp/mylinux目錄下的 4…

    Linux干貨 2016-12-11
  • 使用httpd反向代理模塊實現tomcat負載均衡集群(上)

    前言  tomcat介紹:   tomcat是一個免費開放源代碼的web應用服務器,不是一個完整意義上的Java EE服務器;它甚至都沒有提供哪怕對一個主Java EE API的實現,但由于遵守apache開源協議,tomcat卻有為眾多的java應用程序服務器嵌入自己的產品中構建商業的java應用程序服務器,如JBoss和JOnAS等?!?/p>

    Linux干貨 2015-07-21
  • 進程和計劃任務

    一、知識整理 1、網絡客戶端工具:lftp,ftp,lftget,wget 子命令:get,mget,ls,help等 wget [opt] …[url] -q 靜默模式 -c 斷點續傳 -O 保存位置 –limit-rates=  指定傳輸速率 登錄ftp之后:lcd 在本機切換目錄;get下載單個文件 !ls 查看本機文…

    Linux干貨 2016-09-13
  • 系統基礎之sed工具詳解

    sed工具詳解 NAME:  sed – stream editor for filtering and transforming text(實現文本替換和過濾功能)  類型: 行編輯器(流) 特點: 把文件中的每一行加載到內存中,匹配模式,把能夠匹配到模式的內容輸出到屏幕,不修改原文件 工作模式:   每一次讀取一…

    Linux干貨 2016-08-10
  • 馬哥教育網絡班第21期+第六周課程作業

    1、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的1、以至少一個空白字符開頭的行的行首加#; :%s@^[[:space:]]\+@#@   2、復制/boot/grub/grub.conf至/tmp目錄中,刪除/tmp/grub.conf文件中的行首的空白字符; :%s@^[[:space…

    Linux干貨 2016-08-22
欧美性久久久久