您的位置:首页 > 运维架构 > Apache

linux+apache2.2+php5.2+mysql5.0源码安装

2012-05-08 21:47 429 查看
linux+apache2.2+php5.2+mysql5.0源码安装

一:准备软件包,存放/home/xiutuo/software/目录下。

主要软件包,其他版本的安装方法也类似

1. httpd-2.2.6.tar.gz

2. mysql-5.0.45-linux-i686-glibc23.tar.gz (这个版本是已编译好的压缩包,解压后稍做配置即可使用)

3. php-5.2.5.tar.gz

安装php所需的软件包(其中libxml2是安装php5必须的.)

1. libxml2-(version).tar.gz ---> http://ftp.gnome.org/pub/GNOME/sources/libxm2
2. libxslt-(version).tar.gz ---> http://ftp.gnome.org/pub/GNOME/sources/libxslt
3. curl-(version).tar.gz ---> http://curl.haxx.se/download
GD库所需要软件包(有人说PHP源码包里自带了GD2.0.28和zlib,只要安装GD的三个支持包:jpg,png和freetype,但是我们还是下载)

1. gd-(version).tar.gz ---> http://www.libgd.org/Main_Page or http://www.libgd.org/releases/
2. freetype-(version).tar.gz ---> http://sourceforge.net/projects/freetype
3. jpegsrc.v6b.tar.gz ---> http://ijg.org/files/jpegsrc.v6b.tar.gz
4. libpng-(version).tar.gz ---> http://www.libpng.org/pub/png/libpng.html
5. zlib-1.2.3.tar.gz ---> http://www.zlib.net
把以上所有软件包下载到:/root/Software/目录下.

二:安装mysql

# tar -zvxf mysql-5.0.45-linux-i686-glibc23.tar.gz

# mkdir -p /usr/local/mysql

# cp -r mysql-5.0.45 /usr/local/mysql

# cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysql //开机启动mysql

# cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf

添加mysql用户及用户组

# groupadd mysql

# useradd -g mysql 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/.s/mysql_install_db --user=mysql& //启动mysql服务

# /usr/local/mysql/bin/mysqld_safe --user=mysql&

如出现 Starting mysqld daemon with databases from /usr/local/mysql/data 代表正常启动mysql服务了.

按Ctrl + C 跳出修改 mysql 的 root 密码

# /usr/local/mysql/bin/mysqladmin -u root -p password "123456"

三:安装GD库(让PHP支持GIF,PNG,JPEG)

a.安装 jpeg6 建立目录:

# mkdir -p /usr/local/jpeg6

# mkdir -p /usr/local/jpeg6/bin

# mkdir -p /usr/local/jpeg6/lib

# mkdir -p /usr/local/jpeg6/include

# mkdir -p /usr/local/jpeg6/man

# mkdir -p /usr/local/jpeg6/man1

# mkdir -p /usr/local/jpeg6/man/man1

# cd /root/Software/

# tar -zvxf jpegsrc.v6b.tar.gz

# cd jpeg6

# ./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static

# make

# make install

b.libpng包(支持PNG)

# cd /root/Software/

# tar -zvxf libpng-(version).tar.gz

# cd libpng-(version)

# ./configure --prefix=/usr/local/libpng

# make

#> make install

c.安装 freetype

# cd /root/Software/

# tar -zvxf freetype-(version).tar.gz

# cd freetype-(version)

# mkdir -p /usr/local/freetype

# ./configure --prefix=/usr/local/freetype

# make

# make install

d.安装zlib

# cd /root/Software/

# tar -zxvf zlib-1.2.3.tar.gz

# cd zlib.1.2.3

# mkdir /usr/local/zlib

# ./configure --prefix=/usr/local/zlib

# make

# make install

e.安装GD库

# cd /root/Software/

# tar -zvxf gd-(version).tar.gz

# mkdir -p /usr/local/gd2

# cd gd-(version)

# ./configure --prefix=/usr/local/gd2 --with-jpeg=/usr/local/jpeg6 --with-zlib-dir=/usr/local/zlib --with-png=/usr/local/libpng --with-freetype=/usr/local/freetype

# make

# make install

e.安装Curl库

# cd /root/Software/

# tar -zxf curl-(version).tar.gz

# mkdir -p /usr/local/curl

# ./configure --prefix=/usr/local/curl

# make

# make install

四:安装apache2

# cd /roo/Software/

# tar -zvxf httpd-2.2.6.tar.gz

# cd httpd-2.2.6

# mkdir -p /usr/local/apache2

# ./configure --prefix=/usr/local/apache --enable-modules=so --enable-rewrite

# make

# make install

# /usr/local/apache2/bin/apachectl -k start //启动apahce

用浏览器查看http://localhost,得到it works,说明apache已经配置成功了.

# /usr/local/apache2/bin/apachectl -k stop //停止apache



五:安装php5,php5必须有libxml2支持!


a. 安装libxml2

# cd /root/Software/

# tar -zvxf libxml2-(version).tar.gz

# cd libxml2-(version)

# mkdir -p /usr/local/libxml2

# ./configure --prefix=/usr/local/libxml2

# make

# make install

b.安装 libxslt (可选安装,你可以不安装)

# cd /root/Software/

# tar -zvxf libxslt-(version).tar.gz

# mkdir -p /usr/local/libxslt

# cd libxslt-(version)

# ./configure --prefix=/usr/local/libxslt --with-libxml-prefix=/usr/local/libxml2

# make

# make install

c.安装php5

# cd /root/Software/

# tar -zvxf php-(version).tar.gz

# mkdir -p /usr/local/php5

# cd php-(version)

# ./configure --prefix=/usr/local/php5 --with-apxs2=/usr/local/apache2/bin/apxs \

>--with-gd=/usr/local/gd2 --with-jpeg-dir=/usr/local/jpeg6 \

>--with-zlib-dir=/usr/local/zlib \

>--with-png-dir=/usr/local/libpng \

>--with-freetype-dir=/usr/local/freetype -\

>--enable-trace-vars --with-mysql=/usr/local/mysql \

>--enable-mbstring=all --with-curl=/usr/local/curl --enable-mbregex \

>--with-config-file-path=/usr/local/php5 --enable-ftp \

>--enable-soap --with-xsl=/usr/local/libxslt

# make

# make install

# cp php.ini-dist /usr/local/php5/php.ini (别忘记了呵呵)



六:重新配置apache2让他支持php


# cd /usr/local/apache2/conf

# vim httpd.conf

在LoadModule php5_module modules/libphp5.so

添加AddType application/x-httpd-php .php

OK,基本的安装已经完成.

重新起动APACHE:

# /usr/local/apache2/bin/apachectl start

如果重新起动APACHE出现:

Syntax error . line 232 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/libphp5.so into server:

/usr/local/apache2/modules/libphp4.so: cannot restore segment prot after reloc: Permission denied

那就要按照下面的方法解决:

1.chcon -t texrel_shlib_t /usr/local/apache2/modules/*.so

2.编辑/etc/selinux/config,找到这段:

# This file controls the state of SELinux . the system.

# SELINUX= can take .e of these three values:

# enforcing - SELinux security policy is enforced.

# permissive - SELinux prints warnings instead of enforcing.

# disabled - SELinux is fully disabled.

SELINUX=enforcing

把 SELINUX=enforcing 注释掉:#SELINUX=enforcing ,然后新加一行为:

SELINUX=disabled

保存,关闭。

编辑/etc/sysconfig/selinux,找到:

# This file controls the state of SELinux . the system.

# SELINUX= can take .e of these three values:

# enforcing - SELinux security policy is enforced.

# permissive - SELinux prints warnings instead of enforcing.

# disabled - SELinux is fully disabled.

SELINUX=enforcing

如果SELINUX已经是 SELINUX=disabled,那么就不用改了,否则就把SELINUX=enforcing 注释掉,新加一行:

SELINUX=disabled

保存,退出。

ok,web环境apache2+mysql5+php5就介绍到这里。更详细的apache2的配置和mysql配置和php.ini的配置参考相应文档
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: