源码构建LAMP环境

课程目标:

思考:

基础班使用yum工具搭建了LAMP的环境,为什么还要用源码包再搭建一次呢?

一、项目简介

二、环境准备

1. 需要准备的软件包

2. 安装前环境准备

说明:

如果你在一台机器启动两个 apache 和 mysql ,那么很可能造成一定的冲突,所以为了减少不必要的麻烦,首先停止卸载它们。 由于整个环境会涉及比较多的依赖关系包,所以我们先将一些依赖包装上。(根据不同的环境可能不仅限于这些包)

3. 编译方式

说明:

  1. apache必须要先于php安装;因为php是作为apache的模块libphp.so ,被apache加载调用。
  2. apache和mysql之间并没有直接先后顺序的依赖,所以谁先谁后没所谓。
  3. 在php-5.3版本前,mysql必须先于php的编译;因为php需要实现连接数据库的功能,它通过mysql的接口才能编译出该功能;
  4. 在php-5.3版本或者之后,php已经集成了一套连接mysql数据的代码,并不依赖mysql的接口,这个时候,mysql和php的编译顺序也就无所谓了。

三、编译安装MySQL

后续配置:

四、编译安装Apache

环境准备:

环境1

1. 安装依赖包apr

说明:

在rhel6.5下直接编译安装apache的2.4系列版本,会报下面的错误:

思考: 一个软件的库文件是有可能被其它软件所调用,那么其它软件能否找到你的库文件呢?

问题:怎样将库文件的指定安装路径加入到ldconfig命令的搜索列表里?

加载动态链接库如图示:

apr1

2. 安装httpd软件

五、编译安装PHP

PHP常见参数介绍:

 

六、后续配置

1. 配置apache和php的联系

 

2. 让php支持连接本地的数据库

说明:

本地数据库一般是通过socket文件连接,而本地数据库的socket文件如果不在默认路径,就必须告诉php从哪里读取socket文件。

 

3. 网站加目录里写php测试页

七、启动相关服务

1. 启动mysql数据库

2. 启动apche

 

3. 测试是否支持php

浏览器里输入:http://10.1.1.1 //看到php的测试页表示ok

到此,lamp的编译安装和基本配置完毕,下面就可以安装你的web应用了.

八、源码编译软件经验总结

1. 配置阶段

2. 编译阶段

3. 安装阶段

4. 思考总结

假设一个软件aaa,安装到/usr/local和安装到/usr/local/aaa之间的区别?

最终建议:小软件一般默认安装/usr/local/;大软件安装/usr/local/软件名/下

九、部署WEB应用

 

十、测试验证

正确完成以上操作,就可以在本机进行测试验证。如下图所示:

安装wordpress博客:

wordpress

 

安装成功后直接访问:www.myblog.net

wordpress2

 

 

访问phpmyadmin:www.mysqladmin.cc

phpmyadmin

phpmyadmin2

十一、架构理解