上篇文章简单介绍了利用rpm包安装apache、mysql、php搭建lamp环境,这篇文章介绍利用源码安装apache、mysql、php来搭建lamp环境。那我们为什么要用源码安装这些软件来搭建lamp环境呐?利用rpm包安装软件搭建环境不是很方便吗?

答:因为利用源码安装可以使用最新的功能,而且可以使用个性化配置,使操作更符合我们的习惯。例如:apache2.4比2.2有更加优异的地方,2.4采用MPM 多进程处理机制,默认方式下采用进程方式处理,可以进行配置。

实验环境:  

redhat 企业版 5.4

安装平台

httpd-2.4.4.tar.bz2

apache的主安装程序

apr-1.4.6.tar.gz

apr-util-1.5.1.tar.gz

apache的可移植

运行库和工具

cmake-2.8.10.2.tar.gz

配置mysql的工具

mysql-5.6.10.tar.gz

Mysql的主安装程序

php-5.4.13.tar.bz2

Php的主安装程序

安装之前我们应该思考一下安装的顺序。Apache和php,因为php要基于apache环境运行,那么这两者应该先安装apache;而php和mysql,因为php要调用mysql,那么这两者就应该先安装mysql。

注意源码安装前要确认你的编译环境,需要安装以下四项软件包组(大多数linux机器已经安装,可以在安装了yum的环境下用yum grouplist 查询):

Development Libraries

Development Tools

Legacy Software Development

X Software Development

实现过程:

一:安装apache2.4

1.源码安装首先要拆解

首先将apr,和apr-util解压缩到/usr/local/src/目录下

     tar  -zxvf apr-1.4.6.tar.gz  -C /usr/local/src/

      tar  -zxvf apr-util-1.5.1.tar.gz  -C /usr/local/src/

进入解压缩后的apr目录:/usr/local/src/apr下,进行安装

./config  --prefix=/usr/local/apr   **--prefix=dir 指明安装目录

make&& make install

安装完成后进入/usr/local/apr目录下,分别对安装完成后形成的文件进行操作

wps_clip_image-22787

对于头文件和库文件为了能让其他程序可以调用,我们需要将库文件、库文件加载到系统中。将apr的库文件加载到系统中,我们需要在/etc/ld.so.conf.d/目录中新建一个文件apr.conf,在文件中写入apr的库文件的位置/usr/local/apr/lib/

wps_clip_image-31033

然后我们需要使用ldconfig刷新缓存,然后了ldconfig -pv |grep apr查看是否加载成功

wps_clip_image-5799

而对于apr的头文件,我们为了能让其他程序调用,可以将它拷到/usr/include下,但是这样浪费空间,所以我在/usr/include做一个符号链接指向apr的头文件所在目录。

wps_clip_image-11800

接下来安装apr-util,和apr的安装很相似,只不过apr-util是apr的一个工具,所以在安装的时候,需要你指明apr的安装路径。进入/usr/local/src/apr-util-1.5.1/,执行

./configure --prefix=/usr/local/apr-util/ --with-apr=/usr/local/apr/bin/apr-1-config

×××lamp环境_第1张图片

然后执行make && make install

安装完成后同样对形成的库文件和头文件执行操作,在/etc/ld.so.conf.d目录下新建一个apr-util.conf文件,在里面写上apr-util库文件的路径,同样在/usr/include目录下做链接指向apr-util的头文件

image

image

image *修改/etc/profile文件

接下来就是安装apache了。步骤一样:解压缩,配置,编译,安装,修改库文件和头文件。在安装apache时,要确保系统安装了pcre-devel。

yum install pcre-devel-6.6.2.el5_1.7.i386.rpm

解压:tar  -jxvf httpd-2.4.4.tar.gz  -C /usr/local/src/

配置:./configure 

--prefix=/usr/local/apache          *安装路径

--sysconfdir=/etc/httpd             *配置文件路径

--enable-so

--enable-mods-shared=most      *安装大多数的动态共享库

--enable-ssl                             *启用ssl功能

--enable-mpms-shared=all

--enable-rewrite

--with-apr=/usr/local/apr/bin/apr-1-config        *apr配置文件路径

--with-apr-util=/usr/local/apr-util/bin/apu-1-config           *apr-util配置文件路径

--with-z

--with-pcre

编译、配置: make  && make install

×××lamp环境_第2张图片

对apache头文件、bin目录执行跟apr和apr-util同样的操作

image

image

我们还需要编辑/etc/man.config,将apache的man手册路径添加到搜索路径里面

image

为了使用service 服务名 start|stop 这种方式方便我们的管理,我们自己编写一个apache的控制脚本

vim /etc/init.d/httpd

×××lamp环境_第3张图片

×××lamp环境_第4张图片

我们需要给这个控制文件可执行权限:chmod a+x  httpd

现在我们利用自己编写的控制脚本来启动apache

×××lamp环境_第5张图片

我们在apache的站点主目录下新建一个html网页,利用其它机器访问看时候访问的到

×××lamp环境_第6张图片

×××lamp环境_第7张图片

二:安装mysql

因为在mysql-5.5以后的版本没有了./configure这个配置命令了,需要cmake来配置mysql,所以首先安装cmake

首先解压:tar –zxvf cmake-2.8.10.2.tar.gz –C /usr/local/src

     配置./configure --prefix=/usr/local/cmake

     编译/安装: make && make install

同样将bin/和man/添加到系统变量和搜索路径

image

×××lamp环境_第8张图片

make安装成功之后,利用它来安装mysql。

首先解压mysql-5.6.10.tar.gz,在解压目录(/usr/local/src)下的mysql-5.6.10目录有一个INSTALL-SOURCE文件,里面有具体的安装步骤可以参考

×××lamp环境_第9张图片 

上图有具体的安装步骤,只需照着执行就行。

下面解释一下各步骤的意思:

1.添加一个mysql组和mysql用户(系统用户)来运行mysql是为了提高安全性,因为系统用户没有登入权限

2.scripts/mysql_install_db --user=mysql是初始化数据库、初始化完成后要将权限修改回来,但是data是在mysql运行是,需要mysql用户可以操作的,所以data的所属主是mysql

3.在mysql5.6.10中是cp support-files/my-default.cnf /etc/my.cnf(my-default.cnf是mysql配置文件的样例文件,将mysql配置文件的样例文件拷贝为配置文件)而不是上图中的文件

4.bin/mysqld_safe --user=mysql &(后台启动mysql服务)

5.cp support-files/mysql.server /etc/init.d/mysqld 是为了方便我们使用service mysqld start|stop|restart 来控制mysql服务

同时跟安装前两个一样为了使其它用户能够使用,我们将头文件和库文件连接到系统默认的位置

针对头文件做链接:ln -s /usr/local/mysql/include/ /usr/include/mysql

针对库文件我们在/etc/ld.so.conf.d/下编辑一个mysqld.conf文件,里面写mysql库文件路径

最后编辑/etc/profile文件将mysql的bin目录路径添加到PATH变量中

image

现在我们service mysqld start方式来启动mysql,看是否能正常启动

×××lamp环境_第10张图片

 

上图我们可以看到mysql可以正常启动和使用了,为了方便我们将mysql服务设置为开机自动启动chkconfig --add mysqld

这样mysql就安装完成了

三:安装php

同样首先解压

tar -jxvf php-5.4.13.tar.bz2 -C /usr/local/src/

然后配置

×××lamp环境_第11张图片

上图中的各个选项分别表示:

--prefix= 指明安装位置

--sysconfdir=指明配置文件目录

--with-apxs2= 指明调用模块

--with-mysql= 指明mysql主目录

--wtih-mysqli= 指明mysql接口

--enable-mbstring支持的字符集

--with-png 支持的图形格式

--with-jpeg 支持的图形格

--with-gd 支持压缩

配置完成后执行make && make install(编译并安装)

安装成功之后,需要修改httpd的配置文件/etc/httpd/httpd.conf),让其能够处理PHP的网页内容。

×××lamp环境_第12张图片

现在php也安装好了。

四:测试

首先测试php与apache的连接是否正常

我们在站点主目录下将原来的index.html改为index.php,并且修改里面的内容

×××lamp环境_第13张图片

×××lamp环境_第14张图片

上图显示的就是php的测试页,说明我们的apache和php连接没问题

接下来测试php和mysql的连接是否正常,我们再将index.php这个网页进行修改

×××lamp环境_第15张图片

×××lamp环境_第16张图片

三个之间的连接都没有问题,那我们的lamp环境就已经搭建好了,我们可以使用我们搭建的lamp环境来搭建网上商城、论坛、博客等自己的站点,搭建这些站点的具体步骤在rpm包搭建lamp环境文章中已经介绍了,这里就不再多说了。