1.安装httpd
- # yum install httpd
- # service httpd start
在地址栏里输入http://172.16.22.1(你输入你自己的IP地址,这个是我的),验证web服务是否可以正常工作。
2.安装mysql
方法和LAMP(linux下apache+mysql+php)平台编译安装的实现的安装mysql的方法一样,这里不再赘述。
说明:这个mysql安装不是编译安装,而是解压之后就可以使用,相当于绿色软件哦。
3.编译安装php
①解决依赖关系:
- # yum -y groupinstall "X Software Development"
- # yum -y groupinstall "Development Libraries" # yum -y groupinstall "Development Tools"
如果想让编译的php支持mcrypt扩展,需下载 libmcrypt-2.5.7-5.el5.i386.rpm
libmcrypt-devel-2.5.7-5.el5.i386.rpm两个软件包,此时我们支持扩展。
- # rpm –ivh libmcrypt-2.5.7-5.el5.i386.rpm libmcrypt-devel-2.5.7-5.el5.i386.rpm
②编译安装php-5.3.10
首先下载源码包至本地目录。
- # tar xvf php-5.3.10.tar.bz2
- # cd php-5.3.10
- # ./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 --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt
说明:如果前面第1步解决依赖关系时安装mcrypt相关的两个rpm包,此./configure命令还可以带上--with-mcrypt选项以让php支持mycrpt扩展。
说明:此时你是不是发现编译不通过呢?答案是肯定的了,因为你给的路径--with-apxs2=/usr/local/apache/bin/apxs系统找不到apxs,当然就编译不通过了,你说干脆把这一句给删除了,不要了。
不行,此时web和php就不能结合使用了,apxs就是实现apache扩展功能使php和web服务结合使用的啊。怎么办呢?
仔细想一想:是不是只要编译的时候给的apxs路径系统能找到apxs这个工具就行,yeah,思路正确了,下面就是安装这个工具了。只要安装httpd-devel这个软件包,就会有apxs了。
- # yum install httpd-devel –y
- # rpm –ql httpd-devel | grep “apxs”
此时你会发现真的有apxs这个工具啊!并且路径在/usr/sbin/apxs
于是赶紧:
- # ./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 --with-apxs2=/usr/sbin/apxs --with-mcrypt
- # make
- # make test
- # make install
为php提供配置文件:
- # cp php.ini-production /usr/local/php/lib/php.ini
③编辑apache配置文件httpd.conf,以apache支持php
- # vim /etc/httpd/httpd.conf
添加如下二行
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
定位至DirectoryIndex index.html
修改为:
DirectoryIndex index.php index.html
而后重新启动httpd,或让其重新载入配置文件即可测试php是否已经可以正常使用。
- # service httpd restart
- #cd /usr/local/apache/htdocs
- #vim index.php
- <?php
- phpinfo()
- ?>
此时你发现使用rpm格式的httpd也能和mysql以及编译安装的php构建LAMP平台了。
补充知识:
apxs
是一个为Apache HTTP服务器编译和安装扩展模块的工具,用于编译一个或多个源程序或目标代码文件为动态共享对象,使之可以用由mod_so
提供的LoadModule
指令在运行时加载到Apache服务器中。
因此,要使用这个扩展机制,你的平台必须支持DSO特性,而且Apache httpd必须内建了mod_so模块。apxs
工具能自动探测是否具备这样的条件,你也可以自己用这个命令手动探测:
# httpd -l
该命令的输出列表中应该mod_so
模块。如果所有这些条件均已具备,则可以很容易地借助apxs
安装你自己的DSO模块以扩展Apache服务器的功能。
-------------------------------
原文:https://blog.51cto.com/lihuan/821448