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

LAMP环境搭建

2013-04-22 10:30 302 查看
2007-10-23 17:50:47

标签:LAMP Apache php mysql linux
版权声明:原创作品,如需转载,请与作者联系。否则将追究法律责任。
目前世界最流行的企业建站方式是LAMP(Linux+Apache+MySQL+PHP),即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP作为服务器端脚本解释器。这四个软件都是遵循GPL的开放源码软件,它们安全、稳定、快速、功能强大,使用它们可以建立一个快速、稳定、免费的网站系统。
1、 APACHE的安装配置
Apache是世界使用排名第一的Web服务器,市场占有率达60%左右。
它的特点是简单、速度快、性能稳定。
它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在几乎所有的Unix、Windows、Linux系统平台上)、模块化结构以及它的可移植性等方面。
如果你准备选择Web服务器,毫无疑问Apache是你的最佳选择。
它的官方网站是www.apache.org,你可以从http://httpd.apache.org/download.cgi,下载到它的最新版本,目前最新稳定版是Apache HTTP Server 2.2.4(注:Apache已经改名为Apache HTTP Server)。
a) 下载Apache
#wget http://apache.mirrors.tds.net/httpd/httpd-2.2.4.tar.bz2
请确保你有适当的权限
b) 解压缩Apache
#tar jxvf httpd-2.2.4.tar.bz2 --C /tmp/
解压文件到/tmp/httpd-2.2.4文件夹
c) 进入/tmp/httpd-2.2.4文件夹进行编译和安装
cd /tmp/httpd-2.2.4
./configure –prefix=/opt/httpd224 --enable-so
这句是配置Apache,它有许多的参数,可以用来启用或禁用一些Apache特性或特定模块,可以通过./configure --help来查看,详细的中文说明请参见http://man.chinaunix.net/newsoft/ApacheMenual_CN_2.2new/programs/configure.html#installationdirectories,根据自己的需要配置Apache。
make && make install
这句的含义是对apache源代码进行编译并安装到指定的目录,&&的意思是如果make执行成功的话才执行make install。和先执行make再执行make install等效。到此我们的Apache已经安装完成。
d) 启动Apache并查看Apache启动是否正常
#/opt/httpd224/bin/apachectl start
#echo /opt/httpd224/bin/apachectl start >> /etc/init.d/rc.local
使Apache开机自启动
可以通过ps aux | grep httpd查看httpd进程是否存在,如果不存在请查看是不是有程序占用80端口,可以通过netstat --an | grep 80查看。如果apache启动正常,打开网页浏览器,输入http://ip-address,应该能够看到网页显示”It works !”提示Apache工作正常。
e) 配置Apache
Apache的安装非常简单,但是它的配置就比较复杂了,它的配置文件默认是—prefix/conf/httpd.conf文件,你可以在配置时调用—sysconfdir选项来改变它的位置,在我们这里是/opt/httpd224/conf/httpd.conf文件。由于各个站点的需求不同,侧重点也就不同,配置起来各不相同,所以我们在这里就不写Apache的一些所谓的配置技巧了,大家最好的选择就是根据自己的需求,对照着Apache手册配置最符合自已服务器,知其然而且知其所以然,这里给出Apache 2.2的中文手册:
http://man.chinaunix.net/newsoft/ApacheMenual_CN_2.2new/index.html
2、 Mysql的安装配置
MySQL是一个开放源码的关系型数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
Mysql最常见的应用架构:
单点(Single):适合小规模应用
复制(Replication):适合中小规模应用
集群(Cluster):适合大规模应用
根据功能不同,Mysql可以分为Mysql stand和Mysql max两个版本,Mysql-max相对于stand版本增加了对集群功能的支持。目前Mysql的集群功能还处于实验阶段,有许多限制,不适合在生产环境中布署。
Mysql是开放源码的,所以Mysql在发布时有源代码和预编译二进制两种格式,直接下载源代码的话可以根据我们的具体需求进行手工编译安装,自定义Mysql的特性。如果没有特别的需求的话,建议下载官方的预编译二进制版,因为这些版本都是官方针对特定编译器进行优化,编译支持大多数常用的选项的版本。我们可以从
http://dev.mysql.com/downloads/mysql/5.0.html下载Mysql,它有多个版本,其中5.1和6.0还都不适合生产环境,我们这里下载它的最新稳定版mysql-5.0.45,根据我们的系统和编译器类型,选择适合我们的二进制版本,在这里我们下载Linux (x86, glibc-2.2, "standard" is static),这个版本包含了Mysql所需要的所有库文件并进行,并且进行的是静态编译,所以非常大,但运行速度也要快一点点。
a) 下载Mysql
#wget http://ftp.stu.edu.tw/pub/Unix/Database/Mysql/Downloads/MySQL-5.0/mysql-5.0.45-linux-i686.tar.gz
b) 解压文件
#tar zxvf mysql-5.0.45-linux-i686.tar.gz --C /opt/
#mv /opt/mysql-5.0* /opt/myql5
将mysql解压到/opt/mysql-5.0.45-linux-i686并重命名为/opt/mysql5,也可以通过建立连接来实现,ln --s /opt/mysql5 /opt/mysql-5.0.45-linux-i686
c) 安装配置Mysql
# cd /opt/mysql5
# groupadd mysql
添加mysql用户组
# useradd -g mysql mysql –s /sbin/nologin
添加mysql用户,并设置用户组为mysql,不允许登录
# scripts/mysql_install_db --user=mysql
初始mysql权限数据库
# chown -R root .
更改当前目录、子目录以及文件的属主为root
# chown -R mysql data
更改data目录、data子目录及data下的文件属主为mysql
# chgrp -R mysql .
更改当前目录、子目录以及文件的所属组为mysql
以上三个操作主要是给mysql用户适当的文件系统权限
# bin/mysqld_safe --user=mysql &
启动mysql
# bin/myql-admin --u root password ‘password’
更改mysql管理员用户的密码,默认为空
# cp support-files/my-medium.cnf /etc/my.cnf
mysql配置文件,需要根据自己的具体需求进行更改
# cp support-files/mysq.server /etc/init.d/mysql
添加mysql启动脚本
# chmod +x /etc/init.d/mysql
给mysql启动脚本执行权限
# chkconfig --add mysql
# chkconfig --level 2345 mysql on
以上两步设置mysql开机自动启动
现在我们就完成了mysql的安装,mysql目前还处于成长阶段,它的新版本在不断的添加新的特性,使它的功能越来越强大,相信有一天mysql能够和商业大型数据库系统一决高下。为了更好的使用mysql,如果有时间请仔细阅读mysql手册。
手册地址:http://dev.mysql.com/doc/refman/5.1/zh/index.html
3、 PHP的安装配置
PHP,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hypertext Preprocessor)的缩写。PHP 是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法。它可以比 CGI 或者 Perl 更快速的执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;与同样是嵌入HTML文档的脚本语言JavaScript相比,PHP在服务器端执行,充分利用了服务器的性能;PHP执行引擎还会将用户经常访问的PHP程序驻留在内存中,其他用户再一次访问这个程序时就不需要重新编译程序了,只要直接执行内存中的代码就可以了,这也是PHP高效率的体现之一。PHP具有非常强大的功能,所有的CGI或者JavaScript的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。
PHP是一个正在快速发展的语言,它的新版本增添了许多新的特性,如:Zend II 引擎的采用,完备对象模型、改进的语法设计。使得PHP成为一个设计完备、真正具有面向对象能力的脚本语言,它的功能更加强大。
由于目前网站大多都要进行一些图片处理的操作,如加水印、随机生成验证码等,PHP需要通过GD库来进行图像处理的操作,GD库是一个开放源代码的动态生成图象的函数库,默认支持GIF,为了使它支持我们常用的JPEG、PNG以及TureType字体,我们需要为它安装相应的支持库。
这些支持库的安装都很简单,只要用./configure && make && make install默认编译安装就可以,所以我们在这里只提供一下它们的官方网站和下载地址。
a) 安装PNG支持,我们需要安装libpng和zlib两个库
zlib官方网站:http://www.zlib.net
下载地址:http://www.zlib.net/zlib-1.2.3.tar.gz
png官方网站:http://www.libpng.org/pub/png/
下载地址:
http://superb-west.dl.sourceforge.net/sourceforge/libpng/libpng-1.2.18-no-config.tar.bz2
b) 安装JPEG支持,我们需要安装jpeg-6d库
下载:ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz
c) 安装TrueType字体支持,我们需要安装FreeType库
官方:http://www.freetype.org/
下载:
http://superb-west.dl.sourceforge.net/sourceforge/freetype/freetype-2.3.5.tar.bz2
d) Gd的编译安装
官方:http://www.libgd.org
下载:http://www.libgd.org/releases/gd-2.0.35.tar.bz2
Gd在编译时要手工加上一些参数,使得GD支持JPEG、PNG、TrueType等,编译安 装命令:
#../configure --with-jpeg --with-png --with-zlib --with-freetype
#make && make install
e) PHP下载:
我们可以从http://www.php.net/downloads.php下载最新PHP版本,目前最新的版本为 PHP 5.2.3。
1. 下载
#wget http://cn.php.net/distributions/php-5.2.3.tar.bz2
2. 解压文件
#tar jxvf php-5.2.3.tar.bz2 -C /tmp
3. 编译安装
PHP的功能非常强大,我们需要根据自己的需求启用特定的功能,具体的配置选项可以通过
#./configure --help | more
命令来查看,在这里我们只是简单的加上对mysql、GD、JPEG等的支持,具体的配置参数请根据自己的需求定制,在编译前可能还需要安装特定的支持库。
#cd php-5.2.3
#./configure --prefix=/opt/php523 \
--with-apxs2=/opt/httpd224/bin/apxs \
--with-gd --with-jpeg-dir --with-zlib \
--with-png --with-freetype-dir --with-mysql=/opt/mysql5
#make && make install
这个编译安装过程时间会长一点,这里需要说明的是对于mysql的支持,系统必 须有mysql-client库,如果本机不需要安装Mysql数据库,可以从Mysql官方网 站只下载客户端。
#cp php.ini-dist /opt/php523/var/lib/php.ini
这主要是设置PHP的配置文件,PHP默认在prefix/var/lib查找php.ini文件。可 以通过在配置时添加—with-config-file-path选项改变它的位置。
#cd /opt/httpd224/conf
编辑 httpd.conf 文件以调用 PHP 模块,检查是否存在
LoadModule php5_module modules/libphp5.so
#echo AddType application/x-httpd-php .php .phtml >> httpd.conf
#echo AddType application/x-httpd-php-source .phps >> httpd.conf
以上两句是通知Apache将特定扩展名的文件调用PHP进行解析,可以指定任何扩 展名,只需对每一个用空格分隔。
最后重新启动Apache
#/opt/httpd224/bin/apachectl graceful
在/opt/httpd224文件夹下
#touch phpinfo.php
#echo “<?” >>phpinfo.php
#echo “phpinfo();” >> phpinfo.php
#echo “?>” >> phpinfo.php
打开浏览器,输入http://ip-address/phpinfo.php会显示PHP环境的具体配置信息。
本文出自 “志坡-记事本” 博客,转载请与作者联系!
更多 1
0人 了这篇文章
类别:未分类┆技术圈(0)┆阅读(6971)┆评论(3) ┆ 推送到技术圈┆返回首页
上一篇 从硬件到软件 统一沟通将引领通讯市场 下一篇 Vista丢失密码的解决方法
相关文章
LINUX下的apache+php+mysql的配置Apache + MySQL + PHP + phpMyAdmin在WinXP..linux下apache+php配置解读WAMP和LAMP:从对立到融合WINXP下安装Apache,PHP,MySQL,phpMyAdminWinodws下IIS/Apache+PHP+MySQL的安装配置redhat9下的设置apache+php+mysql编译安装apache+mysql+php 支持jpg,gd等

文章评论

[1楼] rexyy 回复
2007-10-23 18:48:27
高见!

[2楼] panghu1986 回复
2009-03-14 19:18:38
来学习了,不错,呵呵,正想自己在家架个lamp呢

[3楼] [匿名]51CTO游客 回复
2009-04-23 08:36:47
不错,好东东,我收藏了!

发表评论 【有奖门诊】如何以数据驱动决策,提升网站价值
昵 称:登录 快速注册
验证码:请点击后输入验证码博客过2级,无需填写验证码
内 容:
返回顶部
Copyright By 51CTO.COM 版权所有
http://kofstart.blog.51cto.com/1996/47384/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Linux 环境搭建