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太不同的机子上实现,本节就到这里,谢谢!


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