首页 > 代码库 > CentOS 6.3 源码安装LAMP(Linux+Apache+Mysql+Php)环境
CentOS 6.3 源码安装LAMP(Linux+Apache+Mysql+Php)环境
一、简介
什么是LAMP
LAMP是一种Web网络应用和开发环境,是Linux, Apache, MySQL, Php/Perl的缩写,每一个字母代表了一个组件,每个组件就其本身而>言都是在它所代表的方面功能非常强大的组件。LAMP这个词的由来最早始于德国杂志“c‘t Magazine”,Michael Kunze在1990年最先把这些项目组合在一起创造了LAMP的缩写字。这些>组件并不是开始就设计为一起使用的,但是,这些软件都是开源的,可以很方便的随时获得并免费使用,这就导致了这些组件经常在一起使
用。这些组件的兼容性也在不断完善,为了改善不同组件之间的协作,已经创建了某些扩展功能,在一起的应用情形变得非常普便,因而成
为目前最流行的web应用基础架构。
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 提供的一些特性的动态内容。
二、系统环境
系统平台: CentOS release 6.3 (Final)
Apache 运行时:apr-1.4.6.tar.gz
apr-util-1.5.2.tar.gz (http://apr.apache.org/download.cgi)
Apache版本:httpd-2.4.4.tar.gz (http://httpd.apache.org/download.cgi)
Mysql 版本: mysql-5.6.11.tar.gz(http://dev.mysql.com/downloads/mirror.php?id=412388)
Php版本: php-5.4.14.tar.gz(http://php.net/downloads.php)
三、安装前准备
1、库文件准备
在安装PHP之前,应先安装PHP5需要的最新版本库文件,例如libxml2、libmcrypt以及GD2库等文件。安装GD2库是为了让PHP5支 持GIF、
PNG和JPEG图片格式,所以在安装GD2库之前还要先安装最新的zlib、libpng、freetype和jpegsrc等库文件。而且中间还会穿插安装一些软>件,读者可以按照本节提供的顺序安装。
(注意:一下库可能已经本机安装,查看方法rpm -qa | grep 库名称
比如查看是否安装libxml2库,命令:rpm -qa | grep libxml2
如果相关的库不存在,可以下载下面到库进行编译安装,或者使用yum 进行安装
比如对于libxml2库,使用yum安装:
yum search libxml2 #查询相关库对应的rpm文件
输出如下:
libxml2.i686 : Library providing XML and HTML support libxml2-devel.i686 : Libraries, includes, etc. to develop XML and HTML applications yum install libxml2.i686 ibxml2-devel.i686 #安装
)
autoconf-2.61.tar.gz
freetype-2.3.5.tar.gz
gd-2.0.35.tar.gz
jpegsrc.v6b.tar.gz
libmcrypt-2.5.8.tar.gz
libpng-1.2.31.tar.gz
libxml2-2.6.30.tar.gz
zlib-1.2.3.tar.gz
ncurses-5.8.tar.gz
cmake-2.8.4.tar.gz
ZendOptimizer-3.2.6-linux-glibc21-i386.tar.gz
phpMyAdmin-3.0.0-rc1-all-languages.tar.gz
2、安装gcc、gcc-c++编译器
用gcc -v 命令检查安装时使用的编译工作是否存在,如果提示该命令不存在则通过yum进行安装: yum install gcc和yum install gcc-c++安装.
3、卸载默认的低版本环境
目前发行的Linux操作系统版本中,如果选择默认全部安装,就已经安装了LAMP环境,但是版本相对都比较低。我们可以再安装一个LAMP环境和原来的并存,但是这样做没有必要,因为同时只能开启一个LAMP环境。所要我们要在安装之前,先应检查一下系统中是否已经安装了
低版本的环境,如果已经安装过了,停止原来的服务运行,或者把原来的环境卸载掉
a. 卸载Apache
#rpm -qa | grep httpd
说明:检查是否安装了httpd软件包
# rpm -e httpd-2.2.3-63.el5.centos –nodeps
说明:卸载软件包, –nodeps 如果有连带关系,也强制卸载
# cd /etc/httpd/
# rm -rf *
说明:到原来的apache安装目录下,将其所有的安装目录和文件都删掉
b. 卸载Mysql
# rpm -qa | grep mysql
# rpm -e mysql-5.0.77-4.el5_4.2 –nodeps
说明:卸载mysql
c. 卸载Php
# rpm -qa | grep php
# rpm -e php-common-5.1.6-27.el5 –nodeps
# rpm -e php-ldap-5.1.6-27.el5 –nodeps
# rpm -e php-cli-5.1.6-27.el5 –nodeps
# rpm -e php-5.1.6-27.el5 –nodeps
说明:卸载PHP
4、关闭selinux,清空防火墙规则
5、使用ssh shell将windows下的13个源码包上传到/usr/local/src
6、解包
编写一个shell脚本tar.sh进行解包。
#!/bin/sh
cd /usr/local/src
ls *.tar.gz > ls.list
for TAR in cat ls.list
do
tar -zxvf $TAR
done
执行脚本tar.sh进行解包
四、安装LAMP
1、安装各个库,可以使用上面介绍的yum方法安装,如果没有找到相关到库,可以下载源码用如下方法安装,以libxml2为例,其他类似
# cd /usr/local/src/libxml2-2.6.30
# ./configure –prefix=/usr/local/libxml2
# make && make install
2、安装Apache运行时
# cd /usr/local/src/apr-1.4.6
# ./configure && make && make install
# cd /usr/local/src/apr-util-1.5.2
# ./configure && make && make install
说明:这两个库安装后到路径默认为/usr/local/apr/bin,后面编译apache会用到该路径。
3、安装Apache
# cd /usr/local/src/httpd-2.2.9
# ./configure
–prefix=/usr/local/apache2
–sysconfdir=/etc/httpd
–with-apr= /usr/local/apr/bin
–with-apr-utl= /usr/local/apr/bin
–enable-so
–enable-deflate=shared
–enable-expires=shared
–enable-rewrite=shared
–enable-static-support
# make && make install
3、配置Apache
启动Apache
# /usr/local/apache2/bin/apachectl start
查看80端口是否开启
# netstat -tnl|grep 80
关闭Apache
# /usr/local/apache2/bin/apachectl stop
访问Apache服务器
添加自启动
# echo “/usr/local/apache2/bin/apachectl start” » /etc/rc.d/rc.local
4、安装Mysql
新版本mysql使用cmake工具进行预编译配置,需要先安装cmake工具,可以通过源码安装,
或者通过命令安装:yum install cmake
添加一个mysql标准组
# groupadd mysql
添加mysql用户并加到mysql组中
# useradd -g mysql mysql
# cd /usr/local/src/mysql-5.0.41
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DINSTALL_DATADIR=/usr/local/mysql/data
# make && make install
继续下面的命令
cd /usr/local/mysql chown -R mysql . #将文件的所有属性改为root用户chgrp -R mysql . #将组属性改为mysql组./scripts/mysql_install_db --user=mysql #用mysql用户创建授权表chown -R root .
下面的命令是可选的,将mysql的配置文件拷贝到/etc
cp support-files/my-default.cnf /etc/my.cnf
启动mysql
bin/mysqld_safe --user=mysql &
启动mysql,看是否成功
netstat -tnl|grep 3306
将mysql的启动服务添加到系统服务中
cp support-files/mysql.server /etc/init.d/mysqld
现在可以使用下面的命令启动mysql
service mysqld start
停止mysql服务
service mysqld stop
重启mysql服务
service mysqld restart
5、安装PHP
# cd /usr/local/src/5.4.14
# ./configure
–prefix=/usr/local/php
–with-config-file-path=/usr/local/php/etc
–with-apxs2=/usr/local/apache2/bin/apxs
–with-mysql=/usr/local/mysql/
–with-mysqli=/usr/local/mysql/bin/mysql_config
–enable-soap
–enable-mbstring=all
–enable-sockets
# make && make install
6、配置PHP
创建配置文件
# cp php.ini-production /usr/local/php/etc/php.ini
使用vim编辑apache配置文件
# vim /etc/httpd/httpd.conf
添加这一条代码
Addtype application/x-httpd-php .php .phtml
重启Apache
# /usr/local/apache2/bin/apachectl restart
7、测试
编写info.php文件,查看php配置详细
# vim /usr/local/apache2/htdocs/info.php
phpinfo();
?>
通过浏览器访问http://localhost/info.php,获得php的详细配置信息