LAMP环境的搭建(源码安装)

在LAMP环境的搭建(rpm包安装)中,我们知道了怎样利用系统所提供的软件包搭建环境,但是有时候源码安装能够更好地满足我们对环境的搭建要求,能够更好地增减一些功能模块,现在让我们用源码来实现LAMP环境的搭建吧!

 

实验准备:
操作平台为硬件i686,内核版本2.6.18-164.el5的linux操作系统   
源码为分别为:apr-1.4.6.tar.gz     apr-util-1.5.1.tar.gz      httpd-2.4.4.tar.bz2
步骤一:将所需要的软件包传到/root目录下我们建立的apache下
[root@localhost ~]# mkdir apache

步骤二:将软件包解压到(/usr/local/src)下
[root@localhost apache]# tar zxvf apr-1.4.6.tar.gz -C /usr/local/src/
[root@localhost apache]# tar zxvf apr-util-1.5.1.tar.gz -C /usr/local/src/
[root@localhost apache]# tar jxvf httpd-2.4.4.tar.bz2 -C /usr/local/src/

步骤三:编译
由于apache的编译需要apr和apr-util的支持,所以我们先编译它们。
说明:(apr是apache的可移植运行库,主要为上层的应用程序提供跨操作平台的底层支持接口库,包括apr  apr-util等开发包)
--prefix   // 指定服务程序的安装路径 
--enable-so:启用动态加载模块支持 
--enable-rewrite:启用网页地址重写功能,用于网站优化及目录迁移维护。

--enable-charset-lite:启动字符集支持,以便支持使用各种字符集编码的网页。

--enable-cgi:启用CGI脚本程序支持,便于扩展网站的应用访问能力。

--sysconfdir: 指定服务配置文件目录
1)编译apr
cd apr-1.4.6/
./configure --prefix=/usr/local/apr         //指定apr的安装目录
make&&make  install                             //编译配置安装

为了使系统能够调用库文件我们在vim /etc/ld.so.conf.d/ apr.conf(名字)下增加一句话/usr/local/apr/lib指明路径
ldconfig刷新缓存后通过ldconfig -pv |grep apr可以查看到

为了使系统能够调用找到头文件include我们可以做个符号链接 ln -s /usr/local/apr/include/      /usr/include/apr

这样apr就编译完成了

 

2)编译apr-util-1.5.1
cd apr-util-1.5.1/  
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config    //指定apr-util的安装目录和apr的  路径       
make&&make  install                             //编译配置安装
同样需要为库文件和头文件做编辑

库文件依旧是编辑 vim /etc/ld.so.conf.d/apr-util.conf   添加    /usr/local/apr-util/lib  即可
头文件符号链接   ln -s /usr/local/apr-util/include/ /usr/include/apr-util
bin下是一些工具需要放到环境变量中去
linux系统中关于变量的文件有 /etc/profile 和 /etc/bashrc(系统环境变量影响所有用户的使用)    ./bash_profile.bashrc(个人环境变量,影响个人使用) 
vim /etc/profile

3)编译httpd
cd httpd-2.4.4/
./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-mods-shared=most --enable-mpms-shared=all 
--enable-rewrite --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --with-z   //指定httpd的安装目录和配置文件的路径

make&&make  install                             //编译配置安装
4)编辑man手册
由于是源码安装我们需要把apache的man路径加入 /etc/man.config

5)为源码安装的apache的头文件设置连接,方便系统识别
ln -s /usr/local/apache/include/ /usr/include/apache
bin文件(可执行的工具)    vim /etc/profile                加入  /use/local/apache/bin
6)编写脚本来控制httpd的启动,停止,重启等 并且受到chkconfig管理
vim httpd
mv httpd /etc/init.d/
chmod a+x /etc/init.d/httpd 
脚本内容如下:
#!/bin/bash
#chkconfig:26 80 30
#description: Apache Server
   prog=/usr/local/apache/bin/httpd
   lockfile=/var/lock/subsys/httpd
   pidfile=/var/run/httpd.pid
  . /etc/init.d/functions
   start() {
   if  [ -e $lockfile ] ;then
    echo "the programe `basename $prog` is started..."
   else
   echo -e -n "the programe `basename  $prog` is starting....."
  sleep 2
 $prog && echo [ok] && touch $lockfile || echo "fail"
  fi
  }
  stop() {
  if  [ -e $lockfile ] ;then
  echo -e -n "the programe `basename $prog` is stoping......"
  sleep 2
  killproc    `basename $prog` && rm -rf $lockfile && echo "ok" || echo "fail" 
  else
  echo -e "the programe  `basename $prog` is stoped"
  fi
  }
 status() {
  if [ -e $pidfile ];then
  echo "the prog `basename $prog` `cat $pidfile` is running"
  else
  echo "the prog `basename $prog` is stop"
  fi
  }
  case "$1" in
  start)
    start
  ;;
  stop)
    stop
  ;;
  status)
  status
  ;;
  restart)
  stop
  start
  ;;
  *)
  echo "usage: start|stop|status"
  esac
启动apache服务

至此我们的第一步apache已经完成,接下来就是mysql啦

7)mysql的源码安装

a.将mysql和cmake的源码文件解压到/usr/local/src文件夹下

#tar -zxvf mysql-5.6.10.tar.gz -C /usr/local/src/

#tar �Czxvf cmake-2.8.10.2.tar.gz �CC /usr/local/src

切换到cmake目录下

#cd /usr/local/src/cmake-2.8.10.2/

按照安装说明分别执行:

#./ bootstrap(或者./configure --prefix=/usr/local/cmake)

#make

#make install

这里有一种mysql源码说明文件中的安装方法参照即可

现在来进行mysql的安装吧,先切换到mysql的源码解压目录 

#cd /usr/local/src/mysql-5.6.10/

然后执行#cmake .

在执行#make && make install

在安装的过程中可能会遇到一些问题,在这里我列出一个我遇到的问题,以及解决方法

问题(1)�C Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
CMake Error at cmake/readline.cmake:82 (MESSAGE):
Curses library not found. Please install appropriate package,
remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu , package name is libncurses5-dev ,
on RedHat and derivates it is ncurses-devel.
Call Stack (most recent call first):
cmake/readline.cmake:126 (FIND_CURSES)
cmake/readline.cmake:216 (MYSQL_USE_BUNDLED_LIBEDIT)
CMakeLists.txt:256 (MYSQL_CHECK_READLINE)
�C Configuring incomplete, errors occurred!
解决方法

cd /mnt/cdrom/Server/

rpm -ivh ncurses-devel-5.5-24.20060715.i386.rpm 

下载安装之后需要移除目录中的CMakeCache.txt

rm  CMakeCache.txt     

然后执行cmake . 命令即可

mysql的编译时间不是一般的长,大约需要20分钟左右,当出现以下界面时我们就可以进行下一步了

增加mysql用户,和更改文件所属

当然我们依旧需要把mysql的头文件和库文件以及bin文件加到一些目录中去参考apache的方法即可,需要注意的是编辑库文件的时候后缀必须为.conf

mysql启动后,我们看看能否进入数据库

当出现这个界面时,说明我们的mysql也已经安装成功了,接下来即使php了,那么开始吧。

3)php安装

tar jxvf php-5.4.13.tar.bz.2    -C /usr/local/src/           解压源码

cd /usr/local/src/php-5.4.13                                      进入解压目录

./configure --prefix=/usr/local/php --sysconfdir=/etc/php --with-apxs2=/usr/local/apache/bin/apxs --with-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                             指定php的安装目录以及相关组件的安装

在php的安装过程中同样的又遇到了一个问题

解决方法如下:

cd /mnt/cdrom/Server/                 yum install libxm12                       yum install libxm12-devel

当不再有问题出现时执行编译:

make&&make install
关于php的头文件和库文件,bin文件,只需要参考apache的相关文件的操作即可
很顺利的安装成功了,这时候我们的LAMP环境基本已经搭建好了,只需要把这几种服务相互支持即可,首先我们在apache的配置文件(在/etc/http/http.conf)中增加一些语句让它能够执行php的页面

这时候我们的环境才真正的搭建好了,让我们测试一下

由于源码搭建的lamp环境  默认的网页目录在/usr/local/apache/htdocs/下,所以我们还是在该目录下编辑一个小网页测试即可

进入/usr/local/apache/htdocs目录下

编辑          vim index.php
<?php
phpinfo  ()     
?>
用http访问如果出现下面这个界面就说明我们的环境搭建成功了

亦可以参考LAMP环境搭建(rpm安装)中的测试方法,进行测试

 

 

你可能感兴趣的:(apache,mysql,PHP,Web,lamp)