fedora5 下 httpd-2.2.4+php-5.2.1+GD+mysql 5.0..
时间:2008-04-27 来源:trasinx
本操作系统Fedora Core 5
fedora5 下 httpd-2.2.4+php-5.2.1+GD+mysql 5.0.27安装实录
我在用fedora5时,想用这些程序的时候,在fedora 5 下,这些程序放在太多文件夹下,对一名对fedora 5不熟的人很是麻烦。所以决定把这些程序删了重装。
我之所以写这些文字,因为我在google 搜了太多不能实现的教程,希望这篇文章对初学者有点帮助,在开源精神下,任何人可以复制本文字,但要标示出处:http://dragonflyxu12.blog.sohu.com/ QQ:632307939
主要软件包: mysql-standard-5.0.27-linux-i686-glibc23.tar.gz
url:http://dev.mysql.com/downloads/mysql/5.0.html#downloads 下找个镜像
php-5.2.1.tar.gz
url:http://www.php.net/downloads.php
用第2个,第一个包好像少东西,我就是第一个不成功,所以才用第2个包,
这个包一定要选好,安装时候大部分问题都出在这个包
httpd-2.2.4.tar.gz
url:http://www.apache.org/dyn/closer.cgi 选个镜像 PS:源程序尽量到官方网站下,国内站点编辑好多不负责任,源程序少东西 安装php所需的软件包
(其中libxml2是安装php5必须的)
libxml2-2.6.26.tar.gz
libxslt-1.1.17.tar.gz
curl-7.16.1.tar.gz
以上安装包在安装FC5的时候都安装了 没有安装的 请下载后安装 GD库所需要软件包
(有人说PHP源码包里自带了GD2.0.28和zlib,
只要安装GD的三个支持包:jpg,png和freetype,但是我们还是下载)
gd-2.0.34.tar.gz
freetype-2.3.1.tar.gz
jpegsrc.v6b.tar.gz
libpng-1.2.16.tar.gz
zlib-1.2.3.tar.gz PS:这些源程序只要你在www.google.com 里搜 名称+download(例如:libxml2-2.6.26.tar.gz ,就输入:libxml download,第1页就可以找到官方网站)
######################################## 卸载:
我们需要把原来系统自带的或者后来采用rpm方式安装的Apache | mysql | php软件卸载掉,我听说不卸载rpm也是可以的,不会影响源码包或者二进制包的安装,就是将来你不起动那些进程就没问题了,但我还是建议卸载,因为 rpm方式安装的软件把各种文件放在很多奇怪的地方,我感觉是非常不好管理的。 下面的卸载范例是Fedora core2默认安装的包。 卸载Mysql
[root@yourdomainname/]# rpm -qa | grep mysql mysql-3.23.58-9 php-mysql-4.3.4-11 mod_auth_mysql-20030510-4.1 mysql-server-3.23.58-9
说明:rpm –qa | grep mysql 命令是为了把mysql相关的包都列出来,我上面的例子是Fedora core2默认安装mysql的rpm软件包列表,如果是别的Linux版本列出来的列表有可能会不一样,不过不用担心,不管是什么,卸载都从最下面的一个包开始,直到卸载掉第一个为止。 比如:在这个例子中,我们应该先卸载mysql-server-3.23.58-9 方法如下:
rpm –e mysql-server 说明:rpm –e 是卸载rpm包的命令,后面是包名称,最后的版本号是不用打的,比如我们下一步卸载mod_auth_mysql-20030510-4.1包,方法如下: rpm –e mod_auth_mysql 卸载Apache
[root@ yourdomainname /]# rpm -qa | grep httpd httpd-2.0.49-4 system-config-httpd-1.2.0-3 httpd-manual-2.0.49-4 说明:方法跟卸载Mysql一样,不用说了吧 卸载PHP
[root@ yourdomainname /]# rpm -qa | grep php php-odbc-4.3.4-11 php-4.3.4-11 php-mysql-4.3.4-11 php-pear-4.3.4-11 php-ldap-4.3.4-11 php-pgsql-4.3.4-11 说明:方法跟卸载Mysql一样,不用说了吧 注意:卸载的时候如果卸载不掉,系统一般会提示包的依赖关系,并且列出依赖的包的名称,先卸载提示依赖的包就可以了。 如果实在实在有卸载不掉的包,可以加—nodeps这个参数来卸载,比如我们卸载php-4.3.4-11,实在卸不掉了。就用:
[root@ yourdomainname /]# rpm -e php-4.3.4-11 –nodeps 命令很强硬,应该行的。 卸载这段话是抄网上的,我在fedora5 上照葫芦划瓢,还可以,你不要担心会不会把不该删的删掉了,因为即使你删了不该删的,你用上时,可以到网上找相应模块,加到相应的位置就行了,linux下没有注册表这一说,不像windows
############################ 安装:
假定你压缩的源代码放在:/software 下
# mkdir -p /software
进入 /software目录
# cd /software
解压httpd-2.2.4.tar.gz
# tar -zvxf httpd-2.2.4.tar.gz
进入httpd-2.2.4目录
# cd httpd-2.2.4
配置APACHE安装文件
# ./configure --prefix=/usr/local/apache2 / (apache安装目录)
--with-mpm=worker /(这里我使用的多线程多进程的多路处理模块)
--enable-mods-shared=all / (使所有模块都编译成DSO)
--enable-rewrite /(rewrite模块)
--enable-proxy /(proxy模块)
--enable-proxy_http /(proxy_http模块)
--enable-ssl /(SSL模块)
--with-perl(支持PERL) * 这里使用"/"是命令行转行 方便查看及修改 编译
#make;make install 一般安装APACHE不会有什么问题出现 2.安装MYSQL
# cd /software
# tar -zvxf mysql-standard-5.0.27-linux-i686-glibc23.tar.gz
# mv mysql-standard-5.0.27-linux-i686-glibc23 /usr/local/mysql
# cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
#cd /usr/local/mysql 添加mysql用户及用户组
# groupadd mysql
# useradd -g mysql mysql 生成mysql系统数据库
# /usr/local/mysql/scripts/mysql_install_db --user=mysql& 修改mysql目录权限
# chown -R root /usr/local/mysql
# chgrp -R mysql /usr/local/mysql
# chown -R mysql /usr/local/mysql/data 启动mysql服务
# /usr/local/mysql/bin/mysqld_safe --user=mysql&
如果没出现错,代表正常启动mysql服务了, 按Ctrl + C 跳出 3.安装GD
a.安装 jpeg6
建立目录:
# mkdir -p /usr/local/module/jpeg6
# mkdir -p /usr/local/module/jpeg6/bin
# mkdir -p /usr/local/module/jpeg6/lib
# mkdir -p /usr/local/module/jpeg6/include
# mkdir -p /usr/local/module/jpeg6/man
# mkdir -p /usr/local/module/jpeg6/man1
# mkdir -p /usr/local/module/jpeg6/man/man1 # cd /software
# tar -zvxf jpegsrc.v6b.tar.gz
# cd jpeg-6b
# ./configure --prefix=/usr/local/module/jpeg6 --enable-shared --enable-static
# make; make install * jpeg6安装文件中没有写创建目录的命令 b.安装libpng
安装步骤如下
# cd /software
# tar -zvxf libpng-1.2.16.tar.gz
# cd libpng-1.2.16
# cp scripts/makefile.std makefile
# make; make install
c.安装 freetype
# cd /software
# tar -zvxf freetype-2.3.1.tar.gz
# cd freetype-2.3.1
# ./configure --prefix=/usr/local/module/freetype
# make;make install d.:安装zlib
这个一般不用安装
# cd /software
#tar -zxvf zlib-1.2.3.tar.gz
#cd zlib.1.2.3
# ./configure
# make;make install e.安装Curl库
这个一般不用安装
# cd /software
# tar -zvxf curl-7.16.1.tar.gz
# mkdir -p /usr/local/curl
# ./configure --prefix=/usr/local/curl
# make; make install f.安装GD # cd /software
# tar -zvxf gd-2.0.34.tar.gz
# mkdir -p /usr/local/module/gd
# cd gd-2.0.33
# ./configure --prefix=/usr/local/module/gd /
> --with-png /
> --with-jpeg-dir=/usr/local/module/jpeg6 /
> --with-freetype=/usr/local/module/freetype /
> --with-zlib
# make; make install 4.安装php5,php5必须有libxml2支持!编译通不过大部分是由于这个模块
a.安装libxml2
# cd /software
# tar -zxf libxml2-2.6.26.tar.gz
# cd libxml2-2.6.26
# mkdir -p /usr/local/module/libxml2
# ./configure --prefix=/usr/local/module/libxml2
# make; make install b.安装 libxslt(可选安装,你可以不安装)
# cd /software
# tar -zxf libxslt-1.1.15.tar.gz
# mkdir -p /usr/local/module/libxslt
# cd libxslt-1.1.17
# ./configure --prefix=/usr/local/module/libxslt --with-libxml-prefix=/usr/local/module/libxml2
# make; make install c.安装php5
# cd /software
# tar -zvxf php-5.2.1.tar.gz
# mkdir -p /usr/local/php
# cd php-5.2.1
# ./configure --prefix=/usr/local/php /
--with-apxs2=/usr/local/apache2/bin/apxs /
--with-mysql=/usr/local/mysql /
--with-xml /
--with-png /
--with-jpeg-dir=/usr/local/module/jpeg6 /
--with-zlib /
--with-freetype-dir=/usr/local/module/freetype /
--with-gd=/usr/local/module/gd /
--with-curl /
--enable-track-vars /
--disable-debug /
--enable-url-includes /
--enable-sockets /
--enable-force-cgi-redirect /
--enable-calendar /
--with-config-file-path=/etc /
--enable-magic-quotes /
--enable-ftp /
--enable-gd-native-ttf /
--with-ttf /
--with-gdbm /
--with-gettext /
--with-iconv /
--enable-mbstring=all /
--enable-memory-limit /
--with-libxml-dir=/usr/local/module/libxml2 /
--with-xsl=/usr/local/module/libxslt /
--enable-xslt # make
# make install
# cp php.ini-dist /usr/local/php/lib/php.ini (别忘记了呵呵) 如果通不过,运行下面2行
# cp php.ini-dist /usr/local/lib/php.ini
# cp php.ini-dist /etc/php.ini
其中./configure 后的
--prefix=/usr/local/php
--with-apxs2=/usr/local/apache2/bin/apxs
--with-mysql=/usr/local/mysql
--with-xml
是必要的选项 --with-png /
--with-jpeg-dir=/usr/local/module/jpeg6 /
--with-gd=/usr/local/modules/gd /
--with-zlib /
--with-freetype-dir=/usr/local/module/freetype /
这是让PHP支持GD库的配置选项 后面都是一些 要使用的PHP 函数库 可以根据自己的喜好 删除或增加
重新配置apache2让他支持php。 配置 httpd.conf 让apache支持PHP
# vi /usr/local/apache2/conf/httpd.conf
找到 AddType application/x-gzip .gz .tgz 在其下添加如下内容
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps 重启apache
# /usr/local/apache2/bin/apachectl restart
在/usr/local/apache2/htdocs目录里建一内容为: <php? phpinfo(); ?> 的PHP文件,命名为index.php, 输入URL地址:http://127.0.0.1/index.php,查看PHP配置是否正确 如果不正确,可以重启机子在试, 我机子apache启动有问题:httpd: Syntax error on line 86 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/mod_proxy_http.so into server: /usr/local/apache2/modules/mod_proxy_http.so: undefined symbol: ap_proxy_location_reverse_map
我把/usr/local/apache2/conf/httpd.conf第86行注释了,就行了,我到网上查了mod_proxy_http.so,好像我现在用不上. PS:如果有什么问题,把问题放到google上查一下,在对照程序手册,一般都可以解决 ok,web环境apache2+mysql5+php5就介绍到这里。
更详细的apache2的配置和mysql配置和php.ini的配置参考相应文档。
--------------------------------------------------------
让APACHE MYSQL 随系统启动 我一般都是写在/etc/rc.local中 # vi /etc/rc.local
在文件中写入
# 启动APACHE
/usr/local/apache2/bin/httpd -k start
# 启动MYSQL
/usr/local/mysql/bin/mysqld_safe --user=mysql &
fedora5 下 httpd-2.2.4+php-5.2.1+GD+mysql 5.0.27安装实录
我在用fedora5时,想用这些程序的时候,在fedora 5 下,这些程序放在太多文件夹下,对一名对fedora 5不熟的人很是麻烦。所以决定把这些程序删了重装。
我之所以写这些文字,因为我在google 搜了太多不能实现的教程,希望这篇文章对初学者有点帮助,在开源精神下,任何人可以复制本文字,但要标示出处:http://dragonflyxu12.blog.sohu.com/ QQ:632307939
主要软件包: mysql-standard-5.0.27-linux-i686-glibc23.tar.gz
url:http://dev.mysql.com/downloads/mysql/5.0.html#downloads 下找个镜像
php-5.2.1.tar.gz
url:http://www.php.net/downloads.php
用第2个,第一个包好像少东西,我就是第一个不成功,所以才用第2个包,
这个包一定要选好,安装时候大部分问题都出在这个包
httpd-2.2.4.tar.gz
url:http://www.apache.org/dyn/closer.cgi 选个镜像 PS:源程序尽量到官方网站下,国内站点编辑好多不负责任,源程序少东西 安装php所需的软件包
(其中libxml2是安装php5必须的)
libxml2-2.6.26.tar.gz
libxslt-1.1.17.tar.gz
curl-7.16.1.tar.gz
以上安装包在安装FC5的时候都安装了 没有安装的 请下载后安装 GD库所需要软件包
(有人说PHP源码包里自带了GD2.0.28和zlib,
只要安装GD的三个支持包:jpg,png和freetype,但是我们还是下载)
gd-2.0.34.tar.gz
freetype-2.3.1.tar.gz
jpegsrc.v6b.tar.gz
libpng-1.2.16.tar.gz
zlib-1.2.3.tar.gz PS:这些源程序只要你在www.google.com 里搜 名称+download(例如:libxml2-2.6.26.tar.gz ,就输入:libxml download,第1页就可以找到官方网站)
######################################## 卸载:
我们需要把原来系统自带的或者后来采用rpm方式安装的Apache | mysql | php软件卸载掉,我听说不卸载rpm也是可以的,不会影响源码包或者二进制包的安装,就是将来你不起动那些进程就没问题了,但我还是建议卸载,因为 rpm方式安装的软件把各种文件放在很多奇怪的地方,我感觉是非常不好管理的。 下面的卸载范例是Fedora core2默认安装的包。 卸载Mysql
[root@yourdomainname/]# rpm -qa | grep mysql mysql-3.23.58-9 php-mysql-4.3.4-11 mod_auth_mysql-20030510-4.1 mysql-server-3.23.58-9
说明:rpm –qa | grep mysql 命令是为了把mysql相关的包都列出来,我上面的例子是Fedora core2默认安装mysql的rpm软件包列表,如果是别的Linux版本列出来的列表有可能会不一样,不过不用担心,不管是什么,卸载都从最下面的一个包开始,直到卸载掉第一个为止。 比如:在这个例子中,我们应该先卸载mysql-server-3.23.58-9 方法如下:
rpm –e mysql-server 说明:rpm –e 是卸载rpm包的命令,后面是包名称,最后的版本号是不用打的,比如我们下一步卸载mod_auth_mysql-20030510-4.1包,方法如下: rpm –e mod_auth_mysql 卸载Apache
[root@ yourdomainname /]# rpm -qa | grep httpd httpd-2.0.49-4 system-config-httpd-1.2.0-3 httpd-manual-2.0.49-4 说明:方法跟卸载Mysql一样,不用说了吧 卸载PHP
[root@ yourdomainname /]# rpm -qa | grep php php-odbc-4.3.4-11 php-4.3.4-11 php-mysql-4.3.4-11 php-pear-4.3.4-11 php-ldap-4.3.4-11 php-pgsql-4.3.4-11 说明:方法跟卸载Mysql一样,不用说了吧 注意:卸载的时候如果卸载不掉,系统一般会提示包的依赖关系,并且列出依赖的包的名称,先卸载提示依赖的包就可以了。 如果实在实在有卸载不掉的包,可以加—nodeps这个参数来卸载,比如我们卸载php-4.3.4-11,实在卸不掉了。就用:
[root@ yourdomainname /]# rpm -e php-4.3.4-11 –nodeps 命令很强硬,应该行的。 卸载这段话是抄网上的,我在fedora5 上照葫芦划瓢,还可以,你不要担心会不会把不该删的删掉了,因为即使你删了不该删的,你用上时,可以到网上找相应模块,加到相应的位置就行了,linux下没有注册表这一说,不像windows
############################ 安装:
假定你压缩的源代码放在:/software 下
# mkdir -p /software
进入 /software目录
# cd /software
解压httpd-2.2.4.tar.gz
# tar -zvxf httpd-2.2.4.tar.gz
进入httpd-2.2.4目录
# cd httpd-2.2.4
配置APACHE安装文件
# ./configure --prefix=/usr/local/apache2 / (apache安装目录)
--with-mpm=worker /(这里我使用的多线程多进程的多路处理模块)
--enable-mods-shared=all / (使所有模块都编译成DSO)
--enable-rewrite /(rewrite模块)
--enable-proxy /(proxy模块)
--enable-proxy_http /(proxy_http模块)
--enable-ssl /(SSL模块)
--with-perl(支持PERL) * 这里使用"/"是命令行转行 方便查看及修改 编译
#make;make install 一般安装APACHE不会有什么问题出现 2.安装MYSQL
# cd /software
# tar -zvxf mysql-standard-5.0.27-linux-i686-glibc23.tar.gz
# mv mysql-standard-5.0.27-linux-i686-glibc23 /usr/local/mysql
# cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
#cd /usr/local/mysql 添加mysql用户及用户组
# groupadd mysql
# useradd -g mysql mysql 生成mysql系统数据库
# /usr/local/mysql/scripts/mysql_install_db --user=mysql& 修改mysql目录权限
# chown -R root /usr/local/mysql
# chgrp -R mysql /usr/local/mysql
# chown -R mysql /usr/local/mysql/data 启动mysql服务
# /usr/local/mysql/bin/mysqld_safe --user=mysql&
如果没出现错,代表正常启动mysql服务了, 按Ctrl + C 跳出 3.安装GD
a.安装 jpeg6
建立目录:
# mkdir -p /usr/local/module/jpeg6
# mkdir -p /usr/local/module/jpeg6/bin
# mkdir -p /usr/local/module/jpeg6/lib
# mkdir -p /usr/local/module/jpeg6/include
# mkdir -p /usr/local/module/jpeg6/man
# mkdir -p /usr/local/module/jpeg6/man1
# mkdir -p /usr/local/module/jpeg6/man/man1 # cd /software
# tar -zvxf jpegsrc.v6b.tar.gz
# cd jpeg-6b
# ./configure --prefix=/usr/local/module/jpeg6 --enable-shared --enable-static
# make; make install * jpeg6安装文件中没有写创建目录的命令 b.安装libpng
安装步骤如下
# cd /software
# tar -zvxf libpng-1.2.16.tar.gz
# cd libpng-1.2.16
# cp scripts/makefile.std makefile
# make; make install
c.安装 freetype
# cd /software
# tar -zvxf freetype-2.3.1.tar.gz
# cd freetype-2.3.1
# ./configure --prefix=/usr/local/module/freetype
# make;make install d.:安装zlib
这个一般不用安装
# cd /software
#tar -zxvf zlib-1.2.3.tar.gz
#cd zlib.1.2.3
# ./configure
# make;make install e.安装Curl库
这个一般不用安装
# cd /software
# tar -zvxf curl-7.16.1.tar.gz
# mkdir -p /usr/local/curl
# ./configure --prefix=/usr/local/curl
# make; make install f.安装GD # cd /software
# tar -zvxf gd-2.0.34.tar.gz
# mkdir -p /usr/local/module/gd
# cd gd-2.0.33
# ./configure --prefix=/usr/local/module/gd /
> --with-png /
> --with-jpeg-dir=/usr/local/module/jpeg6 /
> --with-freetype=/usr/local/module/freetype /
> --with-zlib
# make; make install 4.安装php5,php5必须有libxml2支持!编译通不过大部分是由于这个模块
a.安装libxml2
# cd /software
# tar -zxf libxml2-2.6.26.tar.gz
# cd libxml2-2.6.26
# mkdir -p /usr/local/module/libxml2
# ./configure --prefix=/usr/local/module/libxml2
# make; make install b.安装 libxslt(可选安装,你可以不安装)
# cd /software
# tar -zxf libxslt-1.1.15.tar.gz
# mkdir -p /usr/local/module/libxslt
# cd libxslt-1.1.17
# ./configure --prefix=/usr/local/module/libxslt --with-libxml-prefix=/usr/local/module/libxml2
# make; make install c.安装php5
# cd /software
# tar -zvxf php-5.2.1.tar.gz
# mkdir -p /usr/local/php
# cd php-5.2.1
# ./configure --prefix=/usr/local/php /
--with-apxs2=/usr/local/apache2/bin/apxs /
--with-mysql=/usr/local/mysql /
--with-xml /
--with-png /
--with-jpeg-dir=/usr/local/module/jpeg6 /
--with-zlib /
--with-freetype-dir=/usr/local/module/freetype /
--with-gd=/usr/local/module/gd /
--with-curl /
--enable-track-vars /
--disable-debug /
--enable-url-includes /
--enable-sockets /
--enable-force-cgi-redirect /
--enable-calendar /
--with-config-file-path=/etc /
--enable-magic-quotes /
--enable-ftp /
--enable-gd-native-ttf /
--with-ttf /
--with-gdbm /
--with-gettext /
--with-iconv /
--enable-mbstring=all /
--enable-memory-limit /
--with-libxml-dir=/usr/local/module/libxml2 /
--with-xsl=/usr/local/module/libxslt /
--enable-xslt # make
# make install
# cp php.ini-dist /usr/local/php/lib/php.ini (别忘记了呵呵) 如果通不过,运行下面2行
# cp php.ini-dist /usr/local/lib/php.ini
# cp php.ini-dist /etc/php.ini
其中./configure 后的
--prefix=/usr/local/php
--with-apxs2=/usr/local/apache2/bin/apxs
--with-mysql=/usr/local/mysql
--with-xml
是必要的选项 --with-png /
--with-jpeg-dir=/usr/local/module/jpeg6 /
--with-gd=/usr/local/modules/gd /
--with-zlib /
--with-freetype-dir=/usr/local/module/freetype /
这是让PHP支持GD库的配置选项 后面都是一些 要使用的PHP 函数库 可以根据自己的喜好 删除或增加
重新配置apache2让他支持php。 配置 httpd.conf 让apache支持PHP
# vi /usr/local/apache2/conf/httpd.conf
找到 AddType application/x-gzip .gz .tgz 在其下添加如下内容
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps 重启apache
# /usr/local/apache2/bin/apachectl restart
在/usr/local/apache2/htdocs目录里建一内容为: <php? phpinfo(); ?> 的PHP文件,命名为index.php, 输入URL地址:http://127.0.0.1/index.php,查看PHP配置是否正确 如果不正确,可以重启机子在试, 我机子apache启动有问题:httpd: Syntax error on line 86 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/mod_proxy_http.so into server: /usr/local/apache2/modules/mod_proxy_http.so: undefined symbol: ap_proxy_location_reverse_map
我把/usr/local/apache2/conf/httpd.conf第86行注释了,就行了,我到网上查了mod_proxy_http.so,好像我现在用不上. PS:如果有什么问题,把问题放到google上查一下,在对照程序手册,一般都可以解决 ok,web环境apache2+mysql5+php5就介绍到这里。
更详细的apache2的配置和mysql配置和php.ini的配置参考相应文档。
--------------------------------------------------------
让APACHE MYSQL 随系统启动 我一般都是写在/etc/rc.local中 # vi /etc/rc.local
在文件中写入
# 启动APACHE
/usr/local/apache2/bin/httpd -k start
# 启动MYSQL
/usr/local/mysql/bin/mysqld_safe --user=mysql &
相关阅读 更多 +