LAMP架構之——PHP

   本節將通過源碼編譯的方式進行安裝PHP,廢話不多說,那我們就開始吧。

1、解決依賴關係

請配置好yum源(系統安裝源及epel源)後執行如下命令:

# yum -y groupinstall "Desktop Platform Development" 
# yum -y install bzip2-devel libmcrypt-devel


2、編譯安裝php

 注意,這裏我已經將源碼包下載好了,如果沒有的話需要到網上下載。

# tar xf php-5.4.26.tar.bz2
# cd php-5.4.26
# ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml  --enable-sockets --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt  --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2  --enable-maintainer-zts

說明:

1、這裏爲了支持apacheworkerevent這兩個MPM,編譯時使用了--enable-maintainer-zts選項。

2、如果使用PHP5.3以上版本,爲了鏈接MySQL數據庫,可以指定mysqlnd,這樣在本機就不需要先安裝MySQLMySQL開發包了。mysqlndphp 5.3開始可用,可以編譯時綁定到它(而不用和具體的MySQL客戶端庫綁定形成依賴),但從PHP 5.4開始它就是默認設置了。

# ./configure --with-mysql=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd


 下面就開始安裝了。

# make
# make test
# make intall

 

php提供配置文件:

# cp php.ini-production /etc/php.ini

3、 編輯apache配置文件httpd.conf,以apache支持php

 

 # vim /etc/httpd/httpd.conf

 1、添加如下二行

  AddType application/x-httpd-php  .php
   AddType application/x-httpd-php-source  .phps

wKioL1PrmCOhY-jzAADphOZjPO8342.jpg 

 2、定位至DirectoryIndex index.html 

   修改爲:

    DirectoryIndex  index.php  index.html

wKiom1PrlxjDGsotAABth4hqMLo901.jpg 

而後重新啓動httpd,或讓其重新載入配置文件即可測試php是否已經可以正常使用。

 注意,如果有index.html的話要將其刪除,或者更名。

測試頁面index.php示例如下:

  <?php
  phpinfo();
?>


wKiom1Prlz6gNnb3AAPI6aeUWds536.jpg 

OK.

 

四、安裝xcache,爲php加速

 

1、安裝

# tar xf xcache-3.0.3.tar.gz
# cd xcache-3.0.3
# /usr/local/php/bin/phpize

wKioL1PrmUjCakZyAAFdINkCZhs813.jpg 

# ./configure --enable-xcache --with-php-config=/usr/local/php/bin/php-config
# make && make install

 

安裝結束時,會出現類似如下行:

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-zts-20100525/

wKioL1PrmYiBBiDbAAKNWzzSPjs065.jpg 

2、編輯php.ini,整合phpxcache

 

首先將xcache提供的樣例配置導入php.ini

# mkdir /etc/php.d
# cp xcache.ini /etc/php.d


說明:xcache.ini文件在xcache的源碼目錄中。

wKiom1PrmJvDf5SGAAB6nakjbO0816.jpg 

接下來編輯/etc/php.d/xcache.ini,找到zend_extension開頭的行,修改爲如下行:

zend_extension = /usr/local/php/lib/php/extensions/no-debug-zts-20100525/xcache.so

wKioL1PrmdaRR2omAABZdorchr4924.jpg 

注意:如果php.ini文件中有多條zend_extension指令行,要確保此新增的行排在第一位。

wKiom1PrmOCTKQGxAAJVeMO7Y28669.jpg 

安裝了之後速度顯著提升。

 

五、啓用服務器狀態

 

mod_status模塊可以讓管理員查看服務器的執行狀態,它通過一個HTML頁面展示了當前服務器的統計數據。這些數據通常包括但不限於:

(1) 處於工作狀態的worker進程數;

(2) 空閒狀態的worker進程數;

(3) 每個worker的狀態,包括此worker已經響應的請求數,及由此worker發送的內容的字節數;

(4) 當前服務器總共發送的字節數;

(5) 服務器自上次啓動或重啓以來至當前的時長;

(6) 平均每秒鐘響應的請求數、平均每秒鐘發送的字節數、平均每個請求所請求內容的字節數;

 

啓用狀態頁面的方法很簡單,只需要在主配置文件中添加如下內容即可:

<Location /server-status>
    SetHandler server-status
    Require all granted
</Location>

wKiom1PrmRuiu3F8AABAfUZCof0791.jpg 

需要提醒的是,這裏的狀態信息不應該被所有人隨意訪問,因此,應該限制僅允許某些特定地址的客戶端查看。比如使用Require ip 172.16.0.0/16來限制僅允許指定網段的主機查看此頁面。

wKioL1Prmj_B-qEJAATWbe5-Jvw937.jpg 

這樣我們的一整個LAMP 就創建好了,不過這只是在同一臺主機上的。下面一節我將介紹如何在3太不同的機子上實現,本節就到這裏,謝謝!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章