LAMP架构简介
1. 什么是LAMP
    LAMP是一种Web网络应用和开发环境,是Linux, Apache,MySQL, Php/Perl的缩写,每一个字母代表了一个组件,每个组件就其本身而言都是在它所代表的方面功能非常强大的组件。
    LAMP这个词的由来最早始于德国杂志“c't Magazine”,Michael Kunze在1990年最先把这些项目组合在一起创造了LAMP的缩写字。这些组件并不是开始就设计为一起使用的,但是,这些软件都是开源的,可以很方便 的随时获得并免费使用,这就导致了这些组件经常在一起使用。这些组件的兼容性也在不断完善,为了改善不同组件之间的协作,已经创建了某些扩展功能,在一起 的应用情形变得非常普便,因而成为目前最流行的web应用基础架构。 
2. LAMP的组件
   平台由四个组件组成,呈分层结构,每一层都提供了整个架构的一个关键部分:
   Linux:Linux 处在最底层,提供操作系统。它的灵活性和可定制化的特点意味着它能够产生一种高度定制的平台,让其它组件在上面运行。其它组件运行于Linux 之上,但是,并不一定局限于 Linux,也可以在 Microsoft Windows、Mac OS X 或 UNIX 上运行。
   Apache:Apache位于第二层,它是一个Web 服务平台,提供可让用户获得 Web 页面的机制。Apache 是一款功能强大、稳定、可支撑关键任务的Web服务器,Internet 上超过 50% 的网站都使用它作为 Web 服务器。
   MySQL:MySQL 是最流行的开源关系数据库管理系统,是LAMP的数据存储端。在 Web 应用程序中,所有帐户信息、产品信息、客户信息、业务数据和其他类型的信息都存储于数据库中,通过 SQL 语言可以很容易地查询这些信息。
   PHP/Perl:Perl 是一种灵活的语言,特别是在处理文本要素的时候,这种灵活性使Perl很容易处理通过CGI接口提供的数据,灵活地运用文本文件和简单数据库支持动态要 素。PHP 是一种被广泛应用的开放源代码的多用途脚本语言,它可嵌入到 HTML中,尤其适合 web 开发。可以使用 PHP 编写能访问 MySQL 数据库中的数据和 Linux 提供的一些特性的动态内容。

3. LAMP的优势
   灵活性:既没有技术上的限制也没有许可证的限制。这允许你能够以适合你的方式灵活地构建和部署应用程序,而不是以你正在使用的技术的提供商规定的方式。
   个性化:LAMP组件是开源软件,已经建立了大量的额外的组件和提供额外功能的模块,能够让你个性化设置组件和功能以便满足你的需求。
   容易开发:用LAMP组件开发极其简单,代码通常非常简洁,甚至非程序员也能够修改或者扩展这个应用程序,同时也给专业的程序员提供了各种高级的特性。
   容易应用:大多数主机服务都把基于LAMP的环境作为标准,应用程序也不需要编译,在新的主机上部署一个应用程序就像拷贝一个应用软件那样容易。
   安全:由于是开源软件,大量的程序员关注这些软件的开发,问题通常能够很快地修复,不需要昂贵的技术支持合同。经过大量的用户和团体组织多年来的使用,LAMP技术是安全和稳定的。
   成本低廉:LAMP组件都是开源软件,只要遵循GPL协议,可以自由获得和免费使用,极大降低了部署成本。

4. 总结
    LAMP是一种Web网络应用和开发环境,基本上是四种开源软件技术的组合,它们组合在一起产生了一个功能强大的应用服务平台,使用却相对来说比较简单和容易。
 




LAMP搭建包
首先要安装预编译环境
1.下载apr安装包:
http://labs.mop.com/apache-mirror//apr/apr-1.4.6.tar.gz
tar zxvf  apr-1.4.6.tar.gz
cd apr-1.4.6
./configure --prefix=/usr/local/apr
make && make install
2.下载apr-util安装包:
http://labs.mop.com/apache-mirror//apr/apr-util-1.4.1.tar.gz
tar zxvf apr-util-1.4.1.tar.gz
cd apr-util-1.4.1
./configure --prefix=/usr/local/apr-util --with-
apr=/usr/local/apr/bin/apr-1-config
make && make install
3.下载pcre安装包:
http://cdnetworks-kr-2.dl.sourceforge.net/project/pcre/pcre/8.30/pcre-8.30.zip
unzip pcre-8.30.zip
cd pcre-8.30
./configure --prefix=/usr/local/pcre
 make && make install
一、编译安装APACHE
1.rpm -qa | grep httpd \\检查系统已安装的HTTPD软件
2.rpm -e --nodepshttpd \\卸载系统默认安装的HTTPD软件包
3.mkdir /usr/local/apache \\创建HTTPD目录作为HTTPD的存储位置
4.下载HTTPD的原码包httpd-2.2.17.tar.bz2到本地目录
5.解压源码包
tar vxf httpd-2.2.17.tar.bz2
6.切换到/usr/local/httpd-2.2.17目录里
cd /usr/local/httpd-2.2.17
7.开始预编译
 ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-track-vars --enable-rewrite --with-zlib --enable-mods-shared=most
8.make
9.make install
10.cp /etc/init.d/httpd ./
  vim httpd
修改
apachectl=/usr/local/apache/bin/apachectl
httpd=/usr/local/apache/bin/httpd
 vim /etc/httpd/httpd.conf
    添加
    PidFile "/var/run/httpd.pid"
11.把HTTPD设置为开机自动启动
   chkconfig --add httpd
   chkconfig httpd on
   chkconfig --list \\查看是否开机启动
12.
vim /etc/profile
添加一条
PATH=$PATH:/usr/local/apache/bin
. !$ \\重读一下文件
13.
vim /etc/man.conf
添加一条
MANPATH /usr/local/apache/man
14.将APACHE的头文件链接到/usr/include/apache下
ln -sv /usr/local/apache/include /usr/include/apache
15.APACHE的库文件
vim /etc/ld.so.conf.d/apache.conf
/usr/local/apache/lib
ldconfig -v \\重新导入库文件

二、解压缩安装MYsql并简单配置
1、下载压缩包mysql-5.5.15-linux2.6-i686.tar.gz
2、解压缩tar xf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local
3、cd /usr/local
   ln -sv mysql-5.5.15-linux2.6-i686 mysql
4、创建组和用户
   groupadd -r mysql  \\系统组
   useradd -g mysql -s /sbin/nologin -M mysql
5、cd /mysql
6、chown -R mysql:mysql .
7、创建逻辑卷
  fdisk /dev/sda
    n     \\新建一个分区
    e     \\新建一个扩展分区
    n     \\新建一个逻辑分区
    +10G  \\逻辑分区大小10G
    t     \\转换分区类型
    8e    \\转换成lvm
   partprobe /dev/sda 重读硬盘分区
   pvcreat /dev/sda5  创建pv
   vgcreat myvg /dev/sda5  创建vg并命名为myvg
   lvcreate -L 3G -n mydata myvg 创建一个3G大小的lv并命名为mydata
   mke2fs -j -L MYDATA -b 2048 /dev/sda5 格式化MYDATA 为ext3 块大小为2048
   mkdir /mydata   在根目录下创建下个mydata目录
   vim /etc/fstab
   添加一条
   LABEL=MYDATA    /mydata      ext3    defaults   0 0
   mount -a  挂载
   mkdir /mydata/data
   chown -R mysql:mysql /mydata/data
8、开始初始化
   scripts/mysql_install_db --user=mysql --datadir=/mydata/data
9、chown -R root .  \\把文件的属主改为root
10、cd support-files
11、 cp my-large.cnf /etc/my.cnf
     vim /etc/my.cnf
     在mysqld里编辑添加一条
     datadir = /mydata/data
12、cp mysql.server /etc/init.d/mysqld
    chkconfig --add mysqld
    chkconfig --list
13、vim /etc/profile
PATH=$PATH:/usr/local/mysql/bin
14、cd ..
ln -sv /usr/local/mysql/include /usr/include/mysql
15、vim /etc/ld.so.config.d/mysql.conf
    /usr/local/mysql/lib
    ldconfig -v重读库文件
16.vim /etc/man.config
   MANPATH /usr/local/mysql/man


三、编译安装php
1、下载php-5.3.6.tar.bz2
2、解压  tar xf php-5.3.6.tar.bz2
3、cd php-5.2.3
4、./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-xml --with-png --with-jpeg --with-zlib --with-freetype --with-gd --enable-track-vars --enable-mbstring=all
5、make
6、make install
7、cp php.ini-production /usr/local/php5/lib/php.ini
8、vim /etc/httpd/httpd.conf
   添加
   AddType application/x-httpd-php .php
   DirectoryIndex index.php index.html
9、setinforce 0 \\关闭SElinux
10.cd /usr/local/apache/htdocs/
  rm index.html
  vim index.php
  测试是否能连上数据库
<?php
$link=mysql_connect(localhost,'root','')
if($link)
echo "success"
else
echo "failure";
?>
11、测试与数据库连接是否正常



这样LAMP基本上算是安装完成