基于Apache 1.3.x的AMP环境编译

基于Apache 1.3.x的AMP环境编译
(for RHEL5/CentOS5)
Apache与 PHP整合模式:
Apache整合PHP有两种方式:
一种是DSO模式,把PHP当作Apache的外部模块来调用,这样增加了Apache的灵活性,但会带来5%的性
能降低;另一种方式是把PHP编译进Apache的内核,这样牺牲了以后调整的灵活性(每次对PHP的重新编
译,都需要再次编译Apache), 但性能会高一些。对Perl、Python也是如此。
这里选择把PHP静态编译进Apache内核。
编译AMP:
安装编译所需要的软件包:
# yum install gcc gcc-c++ termcap libtermcap libtermcap-devel libxml2-devel
1. 编译安装 MySQL
因为PHP的编译依赖MySQL的存在,并且MySQL的编译不依赖与Apache与PHP,所以首先编译MySQL。
下载MySQL源码包:
# wget http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.51b.tar.gz/
from/http://mysql.mirror.rafal.ca/ -P /root
解压MySQL源码包:
# tar xvf /root/mysql-5.0.51b.tar.gz -C /usr/src
添加mysql用户和组:
# groupadd mysql
# useradd -g mysql mysql
配置、编译并安装MySQL:
# cd /usr/src/mysql-5.0.51b
# ./configure --prefix=/usr/local/mysql
# make
# make install
更详细的MySQL编译配置选项,请查阅MySQL官方手册。
拷贝MySQL配置文件:
# cp /usr/src/mysql-5.0.51b/support-files/my-large.cnf /etc/my.cnf
初始化MySQL数据库:
# /usr/local/mysql/bin/mysql_install_db --user=mysql
修改MySQL数据库库文件目录拥有者、拥有组:
# chown -R mysql:mysql /usr/local/mysql/var
复制MySQL启动脚本,并加入到系统启动项:
# cp /usr/src/mysql-5.0.51b/support-files/mysql.server /etc/init.d/mysqld
# chmod +x /etc/init.d/mysqld
# chkconfig --add mysqld
# chkconfig mysqld on
启动MySQL服务器:
# service mysqld start
另外:MySQL的客户端程序在/usr/local/mysql/bin/mysql
2. 预编译Apache 1.3.x:
下载Apache 1.3.x源码包:
# wget http://apache.mirror.phpchina.com/httpd/apache_1.3.41.tar.bz2-P
/root
解压Apache 1.3.x源码包:
# tar xvf /root/apache_1.3.41.tar.bz2 -C /usr/src
配置Apache 1.3.x但不编译安装:
# cd /usr/src/apache_1.3.41
# ./configure --prefix=/usr/local/httpd
3. 编译安装PHP:
下载PHP源码包:
# wget http://cn2.php.net/get/php-5.2.6.tar.bz2/from/cn.php.net/mirror-P
/root
解压PHP源码包:
# tar xvf /root/php-5.2.6.tar.bz2 -C /usr/src
配置、编译并安装PHP:
# cd /usr/src/php-5.2.6
# ./configure --prefix=/usr/local/php5 --with-apache=/usr/src/apache_1.3.41 -
-with-mysql=/usr/local/mysql
# make
# make install
PHP有很多功能模块,请根据实际需求开启,详细配置选项请查阅PHP官方手册。
拷贝PHP配置文件:
# cp /usr/src/php-5.2.6/php.ini-dist /usr/local/php5/lib/php.ini
4. 正式编译安装Apache 1.3.x:
特别说明:
由于Apache 1.3.x版本源代码中对最大进程数限制为256,所以建议修改源代码后再编译。
# vi /usr/src/apache_1.3.41/src/include/httpd.h
在第276行找到:
#define HARD_SERVER_LIMIT 256
修改为:
#define HARD_SERVER_LIMIT 2560
保存退出
配置、编译并安装Apache 1.3.x:
# cd /usr/src/apache_1.3.41
# ./configure --prefix=/usr/local/httpd �Cactivate-module=src/modules/php5/
libphp5.a
# make
# make install
特别注意:configure时,src/modules/php5/libphp5.a是不存在的,不用担心,这样写才能正确编
译。
Apache也有很多功能,请根据实际需求开启,详细参阅官方手册。
修改Apache 1.3.x配置文件:
# vi /usr/local/httpd/conf/httpd.conf
找到如下内容:
<IfModule mod_mime.c>
TypesConfig /usr/local/httpd/conf/mime.types
</IfModule>
修改为:
<IfModule mod_mime.c>
TypesConfig /usr/local/httpd/conf/mime.types
AddType application/x-httpd-php .php
AddType application/x-httpd-source .phps
</IfModule>
保存退出
复制Apache 1.3.x启动脚本并添加到系统启动项:
# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
在/etc/init.d/httpd开头添加如下内容:
# Comments to support chkconfig on RedHat Linux
# chkconfig: 2345 64 36
# description: Apache HTTP Server 1.3
# chkconfig --add httpd
# chkconfig httpd on
启动Apache 1.3.x:
# service httpd start
测试:
在/usr/local/httpd/htdocs中创建一个PHP测试页:
# vi /usr/local/httpd/htdocs/test.php
内容如下:
<?php
phpinfo();
?>

你可能感兴趣的:(职场,lamp,休闲)