当前位置: 首页 > 图文教程 > 网络编程 > PHP > apache的静态/动态编译在apache+php+mysql+gd中的应用

PHP
一贴学会PHP 新手入门教程
用PHP的ob_start() 控制您的浏览器cache
谈谈新手如何学习PHP 默默经典版本
黑夜路人出的几道php笔试题
一些 PHP 管理系统程序中的后门
用php获取本周,上周,本月,上月,本季度日期的代码
PHP 简单数组排序实现代码
PHP 多维数组排序实现代码
php 全局变量范围分析
php_xmlhttp 乱码问题解决方法
PHP 数组学习排序全接触
php Sql Server连接失败问题及解决办法
PHP 翻页 实例代码
php 随机数的产生、页面跳转、件读写、文件重命名、switch语句
PHP 5.3.0 安装分析心得
php 生成WML页面方法详解
php 取得瑞年与平年的天数的代码
php empty函数 使用说明
php natsort内核函数浅析
PHP 源代码分析 Zend HashTable详解

PHP 中的 apache的静态/动态编译在apache+php+mysql+gd中的应用


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 175 ::
收藏到网摘: n/a

apache1.3和apache2的静态/动态编译在apache+php+mysql+GD中的应用

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明

本文是在张微波的文章基础上改进而来,原始文章请见:
http://www.5ilinux.com/blog/archives/000010.html

Fedora Core 3服务器中的apache的静态/动态编译以及apache+php+mysql+gd的应用

我想大家有不少都成功实现apache+php+mysql+gd,网上的文章也有不少,但我发现不少文章都是抄来抄去,并且没有说明白编译的方式,有的索性apache1.3的编译方法原封不动的搬过来套在apache2.0,显然误导一些菜鸟。

我今天就以apache+mysql+php说一下静态编译和DSO动态编译的区别,我会分别拿apache1.3.27和apache2.0.46

说明,因为两个版本的编译命令是有所区别的。

系统和所需软件:
Redhat9.0
apache:1.3.27 和 2.0.46
php: 4.3.2
mysql:4.0.13

gd-2.0.33.tar.gz http://www.boutell.com/gd/
jpegsrc.v6b.tar.gz http://www.ijg.org/
libpng-1.2.7.tar.tar http://sourceforge.net/projects/libpng/
zlib-1.2.2.tar.gz http://sourceforge.net/projects/zlib/
freetype-2.1.9.tar.gz http://sourceforge.net/projects/freetype/

首先来安装mysql

先添加用户:
groupadd mysql
useradd mysql

然后编译mysql

tar zvxf mysql-4.0.13.tar.gz
cd mysql-4.0.13
./configure –prefix=/usr/local/mysql –with-zlib-dir=/usr –with-charset=gbk –sysconfdir=/etc –localstatedir=/var/mysql &&
make &&
make install

安装完成!(注:–with-charset=gbk是使mysql支持中文查询)

然后初始化数据库:

/usr/local/mysql/bin/mysql_install_db

设置权限:

chown -R root.mysql /usr/local/mysql
chown -R mysql.mysql /var/mysql

复制配置文件:

cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf

复制启动文件:

cp /usr/local/mysql/share/mysql/mysql.server /usr/local/mysql/share/mysql/mysqld
chmod a+x /usr/local/mysql/share/mysql/mysqld

启动mysql:

/usr/local/mysql/share/mysql/mysqld start

修改密码:初始的root密码是空的

/usr/local/mysql/bin/mysqladmin -u root -p password 1234
enter password:

把密码修改为1234,由于初始密码为空,所以enter password直接回车就行

测试一下新的密码:

mysql -u root -p mysql
enter password:1234

如果顺利的话就能进入mysql。

好了mysql就讲这么多,有什么问题也不要问我,我对mysql不是很熟悉。

然后安装gd

最新的GD库包括了对GIF的支持,所以不要打GIF补丁

http://sourceforge.net/ 好多源代码包可以在上面找到

安装步骤:

先安装zlib,freetype,libpng,jpeg,再装GD

1.装zlib

tar zxvf zlib-1.2.2.tar.gz
cd zlib-1.2.2
./configure
make
make install

2.安装libpng

tar zxvf libpng-1.2.7.tar.tar
cd libpng-1.2.7
cd scripts/
mv makefile.linux ../makefile
cd ..
make
make install
注意,这里的makefile不是用./configure生成,而是直接从scripts/里拷一个

3.安装freetype

tar zxvf freetype-2.1.9.tar.gz
cd freetype-2.1.9
./configure
make
make install

4.安装Jpeg

tar zxvf jpegsrc.v6b.tar.gz
cd jpeg-6b/
./configure –enable-shared
make
make test
make install
注意,这里configure一定要带–enable-shared参数,不然,不会生成共享库

5.安装GD

tar zxvf gd-2.0.33.tar.gz
cd gd-2.0.33
./configure –with-png –with-freetype –with-jpeg
make install

好了下面是我们的重头戏,我将分别通过静态和动态DSO编译apache+php

至于什么是静态,什么是DSO动态我这里就不多讲了,本人个人倾向大家用DSO动态编译。

首先是apache1.3.29+php4.3.4的静态编译

apache第一次编译,并不要安装,因为php的编译需要apache至少已经编译过一次
tar zvxf