lamp环境搭建及应用(源码)

时间:2022-06-16 07:05:09

kunjiang的上一篇文章《lamp坏境搭建及应用(rpm)》已经介绍lamp的具体含义,所以这里就不在叙述了。那有的盆友说了,既然基于rpm就可以完成lamp环境的搭建和应用,那样既方便又快捷,我们何必还要进行源码安装呢?那我现在就给大家交流一下为何还要进行源码的安装呢。rpm包首先是经过源码配置、编译之后重新打包成rpm包,一般系统自带的rpm包或者网上下载的都比较陈旧,而且不能进行符合我们自身的配置;而那些软件的最新版本大部分都是源代码,使用源代码我们需要自己进行相应的配置、编译和安装,当然会更加的适合我们的环境。不光这些哦,由于软件的更新升级,会增强、增加某些功能去掉一些bug,从而提高软件的性能,我们使用源码自然也会提升系统的整体性能。现在知道源码安装的好处了吧,那赶快体验源码安装的乐趣吧。


下面要进行lamp环境的搭建,我安装的linux的发行版本是rhel 5.4,下面是我们要用的源码包:

httpd-2.4.4.tar.bz2     (源代码)

apr-1.4.6.tar.gz        (源代码)支持httpd的可移植运行库

apr-util-1.5.1.tar.gz   (源代码)可移植运行库的工具

mysql-5.6.10.tar.gz     (源代码)

php-5.4.13.tar.bz2      (源代码)

cmake-2.8.10.2.tar.gz   (源代码)实现mysql的配置

首先查看是否您的主机上已经安装了Development Libraries、 Development Tools、LegacySoftware Development、X Software Development这四个包组,因为只有安装了这四个软件才能具备源码编译的环境,没有安装的话可以配置好本地yum服务器后采用yum install进行安装。基本准备工作做好后,你要考虑一下这些软件包安装的先后关系:由于php与httpd之间的连接靠的是模块,而安装php时会形成httpd的模块,而php要访问mysql,所以我们要先安装httpd,再安装mysql,最后安装php。现在我们可以进行lamp环境的搭建了。


安装httpd:

由于安装httpd需要apr和apr-util的支持,所以先安装这两个包:

[root@localhost ~]# tar -zxvf apr-1.4.6.tar.gz -C/usr/local/src/

[root@localhost ~]# cd /usr/local/src/apr-1.4.6/

[root@localhost apr-1.4.6]# ./configure --prefix=/usr/local/apr

[root@localhost apr-1.4.6]# make && make install

安装完成后,切换到安装目录:

lamp环境搭建及应用(源码)

当然这些形成的头文件和库文件可能被系统内的其他程序所调用,为了能够头文件和库文件能够被系统识别,需要这样操作:

[root@localhost apr]# ln -s /usr/local/apr/include/usr/include/apr

[root@localhost apr]# cd /etc/ld.so.conf.d/

[root@localhost ld.so.conf.d]# vim apr.conf         创建apr.conf文件内容如下图:

lamp环境搭建及应用(源码)

然后使用ldconfig刷新缓存,在使用ldconfig -pv |grep apr查看apr相关的库文件:

lamp环境搭建及应用(源码)

[root@localhost ~]# tar -zxvf apr-util-1.5.1.tar.gz -C/usr/local/src/

[root@localhost src]# cd /usr/local/src/apr-util-1.5.1/

[root@localhost apr-util-1.5.1]# ./configure--prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config

[root@localhost apr-util-1.5.1]# make && make install

为了系统其他程序能够调用apr-util的头文件和库文件,操作同apr的操作相同:

[root@localhost apr-util-1.5.1]# cd /usr/local/apr-util/

[root@localhost apr-util]# ln -s /usr/local/apr-util/include /usr/include/apr-util

[root@localhost apr-util]# cd /etc/ld.so.conf.d/

[root@localhost ld.so.conf.d]# vim apr-util.conf         apr-util.conf内容如下:

lamp环境搭建及应用(源码)

[root@localhost ld.so.conf.d]# ldconfig  

[root@localhost ld.so.conf.d]# ldconfig -pv |grep apr-util

lamp环境搭建及应用(源码)

我们在安装软件包时,会在安装目录下形成一个bin目录,用于存放可以执行的二进制文件,我们为了任何人在任何位置都能够执行,我们需要修改坏境变量。在linux下一切皆文件,所以修改环境变量就要修改环境变量相关的文件,linux下的主要环境文件为:/etc/bashrc、

/etc/profile、~/.bashrc和~/bash_profile修改前两个文件针对所有的用户,修改后两个只针对单个用户。

安装httpd:

由于在进行配置时,依赖于pcre的库,所以我们应该先安装pcre的库,往往软件的库文件存放在一些devel包中,所以我们先安装pcre-devel的包。

rpm -ivh /mnt/cdrom/Server/pcre-devel-6.6-2.el5_1.7.i386.rpm

[root@localhost ~]# tar -jxvf httpd-2.4.4.tar.bz2 -C /usr/local/src/

[root@localhost ~]# cd /usr/local/src/httpd-2.4.4/

[root@localhost httpd-2.4.4]# ./configure \

> --prefix=/usr/local/apache \                             指定安装目录

> --sysconfdir=/etc/httpd  \                               指定配置文件目录

> --enable-mods-shared=most \                              支持的模块

> --enable-so    \                                          开启DSO模式

> --enable-ssl    \                                         支持https

> --enable-mpms-shared=all \                                支持mpms的格式

> --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 \                                             关联pcre

[root@localhost httpd-2.4.4]# make && make install

[root@localhost httpd-2.4.4]# cd /usr/local/apache

lamp环境搭建及应用(源码)

[root@localhost apache]# ln -s /usr/local/apache/include /usr/include/apache

[root@localhost apache]# vim /etc/profile              修改环境文件,内容如下图:

lamp环境搭建及应用(源码)

[root@localhost apache]# . /etc/profile              重新读取环境文件

lamp环境搭建及应用(源码)

[root@localhost apache]# vim /etc/man.config      修改man的配置问价,内容如下图:

lamp环境搭建及应用(源码)

由于源码安装的工具,通常都需要我们自己编写控制脚本,现在我们编写一个简单的控制脚本,一般服务的脚本程序放在/etc/init.d/目录下:

[root@localhost ~]# cd /etc/init.d/

[root@localhost init.d]# vim httpd


#/bin/bash

# chkconfig: 2345 88 78                         服务设置在各级别启动与关闭状态

# description: OpenSSHserver daemon            实现chkconfig自动管理必不可少

lockfile=/var/lock/subsys/httpd

prog=/usr/local/apache/bin/httpd

configfile=/etc/httpd/httpd.conf

. /etc/init.d/functions

start(){

       [ -f $lockfile ] && echo"httpd is started" && exit

       echo -n "httpd isstarting..."

       sleep 1

       $prog -f $configfile && echo"ok" && touch $lockfile || echo "failed"

}

stop(){

       [ ! -f $lockfle ] && echo"httpd is stoped" && exit

       echo �Cn "httpd is stopping"

       sleep 1

       killproc httpd && echo"ok" && rm -rf $lockfile || echo "failed"

}

case "$1" in

start)

       start

       ;;

stop)

       stop

       ;;

restart)      

       stop

       start

       ;;

*)

       echo"USAGE:start|stop|restart"

esac

[root@localhost init.d]# chmod a+x httpd

验证一下脚本能否正常运行:

lamp环境搭建及应用(源码)

[root@localhost init.d]# chkconfig --add httpd       将httpd服务加入开机自启动

lamp环境搭建及应用(源码)


安装mysql数据库,由于mysql拆解的目录内并没有configure文件,我们要想配置和生成makefile文件,必须安装CMake,来对mysql进行配置。

[root@localhost ~]# tar -zxvf cmake-2.8.10.2.tar.gz -C/usr/local/src/

[root@localhost ~]# cd /usr/local/src/cmake-2.8.10.2/

lamp环境搭建及应用(源码)

[root@localhost cmake-2.8.10.2]# ./configure--prefix=/usr/local/cmake

[root@localhost cmake-2.8.10.2]# make && make install

[root@localhost cmake-2.8.10.2]# cd /usr/local/cmake/

为了任何人在任何位置都能使用cmake的工具修改环境文件/etc/profile,内容如下:

lamp环境搭建及应用(源码)

[root@localhost cmake]# . /etc/profile                     重新读取一下环境文件

为了能使用man帮助,同样修改man的配置文件/etc/man.config

lamp环境搭建及应用(源码)

Cmake工具到此安装完成,现在安装mysql,首先系统运行服务需要运行者,首先建立数据库的运行者mysql,其所属组也为mysql,为系统账户:

[root@localhost ~]# groupadd mysql                      建立mysql账户

[root@localhost ~]# useradd -r -g mysql mysql          添加用户为系统账户到组

[root@localhost ~]# tar -zxvf mysql-5.6.10.tar.gz -C/usr/local/src/

[root@localhost ~]# cd /usr/local/src/                              

[root@localhost src]# ln -s mysql-5.6.10 mysql              将解压目录做成链接

[root@localhost src]# cd mysql

lamp环境搭建及应用(源码)

[root@localhost mysql]# cmake .             执行cmake进行配置产生makefile文件

[root@localhost mysql]# make && make install

安装完成会在/usr/local/目录下创建一个存放mysql数据库相关文件的mysql目录,我们进入到此目录:

lamp环境搭建及应用(源码)

此时,我们同样对mysql目录下的bin、include、lib、man进行前面相同的操作,这里不再写出了。

[root@localhost mysql]# chown -R mysql .        改变目录下文件的所有者为mysql

[root@localhost mysql]# chgrp -R mysql .        改变目录下文件的所属组为mysql

[root@localhost mysql]# scripts/mysql_install_db --user=mysql   产生初始化数据库

[root@localhost mysql]# chown -R root .

[root@localhost mysql]# chown -R mysql data     由于data存放有数据库,需要mysql用户拥有权限

lamp环境搭建及应用(源码)

接下来要产生mysql的配置文件和服务的控制脚本:

[root@localhost mysql]# cp support-files/my-default.cnf/etc/my.cnf

[root@localhost mysql]# cp support-files/mysql.server/etc/init.d/mysqld

lamp环境搭建及应用(源码)

[root@localhost ~]# chkconfig --add mysqld          使用chkconfig自动管理mysql

现在我们可以访问我们的数据库了,由于刚安装的数据库并没有口令我们可以直接使用mysql指令进行访问,我们也可以查看里面的数据库和表等:

lamp环境搭建及应用(源码)


为了数据库的安全我们可以使用mysqladmin指令为数据库指定用户名和密码:

[root@localhost ~]# mysqladmin -u root -p password '123'


至此mysql的相关配置安装都已经完成,接下来安装最后一个程序包php

[root@localhost ~]# tar -jxvf php-5.4.13.tar.bz2 -C/usr/local/src/

[root@localhost ~]# cd /usr/local/src/php-5.4.13/

[root@localhost php-5.4.13]# ./configure \

> --prefix=/usr/local/php \

> --sysconfdir=/etc/php \

> --with-apxs2=/usr/local/apache/bin/apxs \             产生与httpd结合的模块

> --with-gd  \                                          支持GD库

> --with-jpeg-dir  \

> --with-png-dir  \

> --with-zlib-dir  \

> --enable-mbstring  \

> --with-mysql=/usr/local/mysql  \

> --with-mysqli=/usr/local/mysql/bin/mysql_config  \

[root@localhost php-5.4.13]# make && make install

[root@localhost php-5.4.13]# cd /usr/local/php/

lamp环境搭建及应用(源码)

我们修改环境文件/etc/profile:

lamp环境搭建及应用(源码)

我们可以通过 php �Cm来查看php支持的模块。

为了能够服务器能够访问php页面,我们需要修改httpd.conf文件,在里面加上下图内容:

lamp环境搭建及应用(源码)

至此lamp的环境已经搭建完成,下面测试httpd与php和httpd与mysql的结合是否成功。

[root@localhost ~]# cd /usr/local/apache/htdocs/

[root@localhost htdocs]# cp index.html index.php

[root@localhost htdocs]# vim index.php

index.php 的内容如下图:

lamp环境搭建及应用(源码)


访问http://192.168.2.10出现下图说明httpd与php的结合正常

lamp环境搭建及应用(源码)


修改index.php的内容如下:

lamp环境搭建及应用(源码)

此时访问http://192.168.2.10若出现如下界面,说明数据库与apache的结合正常:

lamp环境搭建及应用(源码)


到此,整个环境的搭建与测试都已经完成,我们现在就可以利用我们搭建的环境来实现我们的网站的,下面以wordpress的安装为例,实现lamp的应用。Wordpress是一个比较流行的模板,我们可以基于此模板搭建我们自己的博客或者个人站点,它也有很多的主题可以选择实现不同的页面效果。好了,马上开始基于wordpress搭建自己的个人站点了:

首先将wordpress_v3.0.5-zh_CN.zip拆解,进入到拆解的目录,将wordpress目录内的所有内容上传到我们的站点主目录/usr/local/apache/htdocs

[root@localhost ~]# unzip wordpress_v3.0.5-zh_CN.zip

[root@localhost ~]# cd wordpress-3.0.5-zh_CN/

[root@localhost wordpress-3.0.5-zh_CN]# cp -R wordpress/usr/local/apache/htdocs/


我们访问http://192.168.2.10/wordpress出现下面界面:

lamp环境搭建及应用(源码)

此时由于缺少配置文件,所以我们去拷贝配置文件的样例文件为配置文件并修改,进行再次访问:

[root@localhost wordpress]# cp -p wp-config-sample.phpwp-config.php

[root@localhost wordpress]# vim wp-config.php

lamp环境搭建及应用(源码)

此时,由于没有wordpress数据库,访问时会出现下面界面:

lamp环境搭建及应用(源码)

我们需要创建wordpress数据库:

lamp环境搭建及应用(源码)


再次访问http://192.168.2.10/wordpress,出现如下界面:

lamp环境搭建及应用(源码)

自己填写相应的内容,单击安装wordpress按钮,进入下面界面:

lamp环境搭建及应用(源码)

点击登录按钮,出现登录界面:

lamp环境搭建及应用(源码)

再次选择登录按钮,进入站点的后台页面:

lamp环境搭建及应用(源码)


我们再次访问http://192.168.2.10/wordpress/便可以访问了站点主页:

lamp环境搭建及应用(源码)

我们还可以安装自己下载的主题,来使得我们的站点更加美观:

[root@localhost ~]# unzip Stratex.zip                   解压我们的主题压缩包

[root@localhost ~]# mv Stratex/usr/local/apache/htdocs/wordpress/wp-content/themes/    将解压后的主题上传至站点根目录下/wordpress/wp-content/themes/目录

我们再次进入后台管理页面,选择外观à主题,便可以应用新的主题:

lamp环境搭建及应用(源码)


再次访问首页,发现首页已经发生改变:

lamp环境搭建及应用(源码)


至此,lamp环境的搭建与应用都已经完成。


本文出自 “夜风” 博客,请务必保留此出处http://jiangkun08.blog.51cto.com/6266992/1290995