Home > php教程 > php手册 > body text

linux下apache+mysql+php开发环境纯源代码编译搭建

WBOY
Release: 2016-06-21 09:15:59
Original
1231 people have browsed it

apache|mysql|编译|源代码

记录一下我在fedora core 1下通过源代码编译出来的apache+mysql+php开发环境的全部过程

通常安装一台服务器当然使用rpm是最方便的,不需要考虑太多配置的问题,就可以轻松获得需要的环境了。不过rpm包互相关联的问题也不是这么容易解决。 apache,mysql,php这三个应用从源代码编译安装还是比较简单的,配置参数不算复杂,而且没有太多的依赖关系,从源码编译出来的系统也比较稳定一些,方便未来打补丁和升级工作。

编译安装的前提是,系统已经安装了相应的编译工具,一般我的习惯是在安装系统的时候,选择自定义系统并且只选择开发工具包这一项,其他所有软件包均不安装。如果您没有选择安装所有的开发工具,那么之前您至少需要安装下面的rpm包

autoconf-2.57-3.noarch.rpm
automake-1.7.8-1.noarch.rpm
binutils-2.14.90.0.6-3.i386.rpm
bison-1.875-5.i386.rpm
byacc-1.9-26.i386.rpm
cpp-3.3.2-1.i386.rpm
flex-2.5.4a-30.i386.rpm
gcc-3.3.2-1.i386.rpm
gcc-c++-3.3.2-1.i386.rpm
glibc-devel-2.3.2-101.i386.rpm
glibc-headers-2.3.2-101.i386.rpm
glibc-kernheaders-2.4-8.36.i386.rpm
libstdc++-devel-3.3.2-1.i386.rpm
m4-1.4.1-14.i386.rpm

下面介绍步骤

1、mysql安装
下载一个目标版本
tar -xzvf mysql-4.0.xx.tar.gz
cd mysql-4.0.xx
./configure --prefix=/usr/local/mysql make
make install
在support-files目录中,选择一个适当的.cnf文件,cp到/etc/my.cnf
cd /usr/local/mysql/bin
./mysql_install_db
../share/mysql/mysql.server start
./mysqladmin -uroot password 'xxxx' ./mysql -uroot -p 尝试登陆mysql,应该是没有问题的了

mysql.server这个文件可以copy到/etc/rc.d/init.d目录下,设置系统启动的时候自动启动mysql服务

2、apache安装
下载一个目标版本
tar -xzvf httpd-2.0.xx.tar.gz
cd httpd-2.0.xx
./configure --prefix=/usr/local/apache --enable-so make
make install
cd /usr/local/apache/conf
修改httpd.conf,因为一会儿还要配置php,这里可以暂时简单设置一下,主要配置User,Group,ServerName,DocumentRoot,DirectoryIndex这些参数就可以了
cd /usr/local/apache/bin
./apachectl start 启动apache服务,这时候在客户端浏览器里面输入ip,因该可以看到apache默认的页面出现

apachectl这个文件也可以copy到/etc/rc.d/init.d目录下,设置系统启动的时候自动启动apache服务


3、php安装
下载一个目标版本
tar -xzvf php-4.3.xx.tar.gz
cd php-4.3.xx
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs make
make install
将源码目录中php.ini-recommended这个文件copy到/usr/local/php/lib/下,改名为php.ini
回到apache的配置文件中,确认是否自动添加了LoadModule php4_module modules/libphp4.so这一行。然后再添加下面的代码,我一般习惯添加在#AddHandler cgi-script .cgi这一行后面。
AddType application/x-httpd-php .php

使用apachectl重新启动apache服务
./apachectl restart

在设置的DocumentRoot目录下,添加一个phpinfo.php的文件来测试系统,程序代码如下:


  //filename: phpinfo.php
  phpinfo();
?>

这时候在客户端浏览器中访问http://serverip/phpinfo.php应该出现php的参数表,至此所有系统安装完毕。

当然还有一些细节需要考虑,比如将
/usr/local/mysql/bin
/usr/local/apache/bin
/usr/local/php/bin
三个目录加入到系统的PATH里面,这样所有的操作指令在任何路径都可以执行了

配置php.ini文件,将include_path设置成include_path = ".:/usr/local/php/lib/php",这样就可以在代码里面使用pear代码库了。

上述是这三个应用的基本最简配置,如果需要额外的扩展功能,就要在./configure后面的参数中进行配置了,具体配置的格式可以参考各自的./configure --help帮助菜单。

建议保留源代码的目录,这样在需要添加扩展的时候,只需要修改configure参数,并且make, make install一下,重新启动服务,就可以更新了。



Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template