您的位置:首页 > 运维架构 > 网站架构

LAMP服务器架构

2011-11-30 07:53 169 查看
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.gztar zxvf apr-1.4.6.tar.gzcd apr-1.4.6./configure --prefix=/usr/local/aprmake && make install2.下载apr-util安装包:http://labs.mop.com/apache-mirror//apr/apr-util-1.4.1.tar.gztar zxvf apr-util-1.4.1.tar.gzcd apr-util-1.4.1./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-configmake && make install3.下载pcre安装包:http://cdnetworks-kr-2.dl.sourceforge.net/project/pcre/pcre/8.30/pcre-8.30.zipunzip pcre-8.30.zipcd pcre-8.30./configure --prefix=/usr/local/pcre make && make install一、编译安装APACHE1.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.bz26.切换到/usr/local/httpd-2.2.17目录里cd /usr/local/httpd-2.2.177.开始预编译 ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-track-vars --enable-rewrite --with-zlib --enable-mods-shared=most8.make9.make install10.cp /etc/init.d/httpd ./ vim httpd修改apachectl=/usr/local/apache/bin/apachectlhttpd=/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/man14.将APACHE的头文件链接到/usr/include/apache下ln -sv /usr/local/apache/include /usr/include/apache15.APACHE的库文件vim /etc/ld.so.conf.d/apache.conf/usr/local/apache/libldconfig -v \\重新导入库文件
二、解压缩安装MYsql并简单配置1、下载压缩包mysql-5.5.15-linux2.6-i686.tar.gz2、解压缩tar xf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local3、cd /usr/local ln -sv mysql-5.5.15-linux2.6-i686 mysql4、创建组和用户 groupadd -r mysql \\系统组 useradd -g mysql -s /sbin/nologin -M mysql5、cd /mysql6、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/data8、开始初始化 scripts/mysql_install_db --user=mysql --datadir=/mydata/data9、chown -R root . \\把文件的属主改为root10、cd support-files11、 cp my-large.cnf /etc/my.cnf vim /etc/my.cnf 在mysqld里编辑添加一条 datadir = /mydata/data12、cp mysql.server /etc/init.d/mysqld chkconfig --add mysqld chkconfig --list13、vim /etc/profilePATH=$PATH:/usr/local/mysql/bin14、cd ..ln -sv /usr/local/mysql/include /usr/include/mysql15、vim /etc/ld.so.config.d/mysql.conf /usr/local/mysql/lib ldconfig -v重读库文件16.vim /etc/man.config MANPATH /usr/local/mysql/man

三、编译安装php1、下载php-5.3.6.tar.bz22、解压 tar xf php-5.3.6.tar.bz23、cd php-5.2.34、./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=all5、make6、make install7、cp php.ini-production /usr/local/php5/lib/php.ini8、vim /etc/httpd/httpd.conf 添加 AddType application/x-httpd-php .php DirectoryIndex index.php index.html9、setinforce 0 \\关闭SElinux10.cd /usr/local/apache/htdocs/ rm index.html vim index.php 测试是否能连上数据库<?php$link=mysql_connect(localhost,'root','')if($link)echo "success"elseecho "failure";?>11、测试与数据库连接是否正常

这样LAMP基本上算是安装完成
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息