LAMP架构浅析

一、LAMP简介

Linux+Apache+Mysql/MariaDB+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。LAMP具有Web资源丰富、轻量、快速开发等特点,微软的.NET架构相比,LAMP具有通用、跨平台、高性能、低价格的优势,因此LAMP无论是性能、质量还是价格都是企业搭建网站的首选平台。

二、本实验目的

通过简单编译安装可实现各服务器互相连接,从而对lamp有更清晰的认识。

三、实验环境

Apache-2.4.9(ip172.16.100.86),php-5.4.26(ip172.16.100.86),Mariadb-5.5.36(ip172.16.100.91)。在此处Apache和php(php在次作为一模块存在)安装到同一个虚拟机上,Mariadb单独一个。

四、编译安装Apache2.4.9

httpd-2.4.9需要较新版本的apr和apr-util,因此需要事先对其进行升级。升级方式有两种,一种是通过源代码编译安装,一种是直接升级rpm包。装之前还需装载pcre和开发包组。这里选择使用编译源代码的方式进行,可执行#lftp://172.16.0.1。找到apr-1.5.0.tar.bz2,apr-util-1.5.3.tar.bz2,httpd-2.4.9.tar.bz2。并下载下来。

(1)编译安装apr

#tarxfapr-1.5.0.tar.bz2

#cdapr-1.5.0

#./configure--prefix=/usr/local/apr

#make&&makeinstall

(2)如若没问题即编译安装apr-util

#tarxfapr-util-1.5.3.tar.bz2

#cdapr-util-1.5.3

#./configure--prefix=/usr/local/apr-util--with-apr=/usr/local/apr

#make&&makeinstall

(3)编译安装httpd-2.4.9

首先下载httpd-2.4.9到本地,下载路径为ftp://172.16.0.1/pub/Sources/new_lamp。而后执行如下命令进行编译安装过程:

#tarxfhttpd-2.4.9.tar.bz2

#cdhttpd-2.4.9

#./configure--prefix=/usr/local/apache--sysconfdir=/etc/httpd24--enable-so--enable-ssl--enable-cgi--enable-rewrite--with-zlib--with-pcre--with-apr=/usr/local/apr--with-apr-util=/usr/local/apr-util--enable-modules=most--enable-mpms-shared=all--with-mpm=event

#make&&makeinstall

(4)修改httpd的主配置文件,设置其Pid文件的路径

编辑/etc/httpd24/httpd.conf,需添加如下行:PidFile"/var/run/httpd.pid"

添加情况如下

(5)提供SysV服务脚本/etc/rc.d/init.d/httpd。而后为此脚本赋予执行权限:#chmod+x/etc/rc.d/init.d/httpd,并加入服务列表:#chkconfig--addhttpd

五、编译安装Mariadb-5.5.36

(1)确保没有rpm包安装的mysql,

执行#lftp172.16.0.1

>cd/pub/Sources/6.x86_64/mariadb/

>getmariadb-5.5.36.tar.bz2

下载完成之后先不要忙着装载,要明白数据对于企业来说很重要。因此需要使用专门存储数据的盘,数据如果越来越大也是个问题那么把数据放到逻辑卷中最好了。

(2)创建逻辑卷

#fdisk/dev/sda点p查看磁盘分区,n新建,如果新建第三个且给+15G大小,而后点t,3,8e,w保存退出。

#partx-a/dev/sda

#kpartx-af/dev/sda

#cat/proc/partition

接下来创建逻辑卷

#pvcreate/dev/sda3

#vgcreatemyvg/dev/sda3

#lvcreate-L5G-nmydatamyvg

#mke2fs-text4-LMYDATA-b2048-m3/dev/myvg/mydata//格式化完成

#mkdir/mydata

#vim/etc/fstab

#mount-a

#mkdir/mydata/data

#groupadd-rmysql

#useradd-gmysql-rmysql

#idmysql

#chown-Rmysql:mysql/mydata/data

#cd/usr/local

#ln-svmariada[tab]mysql

#cd/usr/local/mysql

#ll//查看属组情况

#chown-Rroot:mysql./

在support-files目录下有很多样例文件需要先创建目录#mkdir/etc/mysql而后可以执行#cpsupport-files/my-large.conf/etc/mysql/my.cnf接下来就可以在#vim/etc/mysql/my.cnf里面添加datadir=/mydata/data指定路径

下面就要初始化数据库,切到mysql目录下

#scripts/mysql_install_db--user=mysql--datadir=/mydata/data

而后启动服务

#cpsupport-files/mysql.server/etc/rc.d/init.d/mysqld

#chkconfig--addmysqld

#chkconfig--listmysqld

还要在#vim/etc/profile.d/mysql.sh中添加exportPATH=/usr/local/mysql/bin:$PATH

#source/etc/profice,d/mysql.sh可运行。

六、编译安装php-5.4.26

(1)先执行

#yum-ygroupinstallDesktopPlatformDevelopment

#yum-yinstallbzip2-devellibmcrypt-devel

(2)编译安装php-5.4.26

首先,#lftp://172.16.0.1找到资源下载。

#tarxfphp-5.4.26.tar.bz2

#cdphp-5.4.26

#./configure--prefix=/usr/local/php--with-mysql=mysqlnd--with-openssl--with-mysqli=mysqlnd--enable-mbstring--with-freetype-dir--with-jpeg-dir--with-png-dir--with-zlib--with-libxml-dir=/usr--enable-xml--enable-sockets--with-apxs2=/usr/local/apache/bin/apxs--with-mcrypt--with-config-file-path=/etc--with-config-file-scan-dir=/etc/php.d--with-bz2--enable-maintainer-zts

#make&&makeintall

#cpphp.ini-production/etc/php.ini//为php提供配置文件。

(3)编辑apache配置文件httpd.conf,以apache支持php

#vim/etc/httpd/httpd.conf

定位至DirectoryIndexindex.html

而后重新启动httpd,或让其重新载入配置文件即可测试php是否已经可以正常使用。

(4)测试页面index.php示例如下:

<?php

$link=mysql_connect('172.16.100.91','root','chyu');

if($link)

echo"Success...";

else

echo"Failure...";

mysql_close();

phpinfo();

?>

(5)使用浏览器测试结果如下: