LAMP一直是一种应用非常广泛的Web平台,学习Linux也有一些日子了,但是从来没有认真做过笔记,现在终于闲了一些,将自己所学习的一些东西记录下来,方便以后翻阅。
首先列出本次安装所需要的软件包及版本:
OS                      CentOS-5.5 64bit
cmake-2.8.8             mysql-5.5.23   
httpd-2.4.2             apr-1.4.6           apr-util-1.3.8             pcre-8.30
php-5.4.0
 
第一部分 MySQL安装
一、安装cmake
解压
#tar zxvf cmake-2.8.8.tar.gz
安装
#./bootstrap
#make && make install
 
二、安装MySQL数据库;
创建mysql用户
#useradd –M mysql                   -M参数为不创建用户目录
创建数据存放目录等
#mkdir –p /data/mysql/{data,logs}
更改属主
#chown –R mysql:mysql /data/mysql
解压
#tar zxvf mysql-5.5.23.tar.gz
预编译
# cmake . \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \                  安装目录
-DMYSQL_DATADIR=/data/mysql/data \                         数据目录
-DMYSQL_UNIX_ADDR=/data/mysql/mysqld.sock \                socket文件路径
-DWITH_INNOBASE_STORAGE_ENGINE=1 \                         innoDB引擎
-DEXTRA_CHARSETS=all \                                     支持字符集
-DDEFAULT_CHARSET=utf8 \                                   字符集
-DDEFAULT_COLLATION=utf8_general_ci \                      字符集校验
-DWITH_DEBUG=0 -DSYSCONFDIR=/data/mysql/                   默认配置文件my.cnf路径
并行编译并安装
#make –j 4 && make install
复制配置文件

#cp support-files/my-medium.cnf /data/mysql/my.cnf

复制启动脚本

#cp support-files/mysql.server /etc/ini.d/mysqld

#chmod +x /etc/ini.d/mysqld
配置开机启动
#chkconfig –add mysqld
#chkconfig mysqld on
查看配置结果
#chkconfig –list | grep mysqld
初始化数据库
#cd /usr/local/mysql/scripts/

#./mysql_install_db –basedir=/usr/local/mysql –datadir=/data/mysql/data –user=mysql

将mysql命令加入环境变量

#echo ‘PATH=/usr/local/mysql/bin:$PATH’ >> /etc/profile

#source /etc/profile
登录数据库
#mysql
 
第一部分MySQL安装完成。
参考资料:
 
第二部分 Apache安装
一、安装apr、apr-util、pcre
先简单说明一下这几个包:

Apache可移植运行库(Apache Portable Runtime,APR)。主要用作Apache 2.0 Web服务器基础的APR让你能够把应用程序汇集到单个接口上,在多个平台上运行,这些平台包括Unix、Linux和Windows。

PCRE(Perl Compatible Regular Expressions中文含义:perl语言兼容正则表达式)是一个用C语言编写的正则表达式函数库,由菲利普.海泽(Philip Hazel)编写。PCRE是一个轻量级的函数库,比Boost之中的正则表达式库小得多。PCRE十分易用,同时功能也很强大,性能超过了POSIX正则表达式库和一些经典的正则表达式库。

 
去各自的官方网站下载最新稳定版软件包,本次下载的版本如下:
apr-1.4.6           apr-util-1.3.8             pcre-8.30
这三个软件默认编译安装即可,安装路径统一为/usr/local/*。Pcre预编译时加上apr路径。参数:
--with-apr=/usr/local/apr/
二、安装Apache
解开压缩包后直接进入源码包进行预编译,编译参数如下:
#./configure \
--prefix=/usr/local/apache \              路径
--enable-so \                             动态加载模块(DSO)支持
--enable-module=rewrite \                 编译rewrite模块(rewrite不可以动态加载)
--with-mpm=prefork \                      非线程型的、预派生的Web服务器,适用于没有线程安全库,需要避免线程兼容性问题的系统
--enable-shared=max                       除了so以外的所有apache的标准模块都编译成DSO模块。而不是编译进apache核心内
完成后编译,编译安装。
#make –j 4 && make install
测试启动
#/usr/local/apache/bin/apachectl -k start     没有消息就是好消息
#netstat -ntl                                 查看监听端口80
#curl –v http://localhost                                                测试访问
加入开机启动脚本

#echo ‘/usr/local/apache/bin/apachectl start’ >> /etc/rc.local

OK!Apache安装完成!
参考资料
第三部分 PHP安装
安装前先安装一些库依赖关系。不然预编译不过去。

#yum –y install libpng libpng-devel libjpeg libjpeg-devel freetype freetype-devel freetype-demos

解压、进入源码目录
#tar zxvf php-5.4.0.tar.gz
#cd php-5.4.0
./configure --prefix=/usr/local/php \                 安装路径
--with-apxs2=/usr/local/apache/bin/apxs \             整合Apache
--with-config-file-path=/usr/local/php/etc \          配置文件路径
--with-mysql=/usr/local/mysql/ \                                          整个MySQL,对MySQL支持

--with-mysqli=/usr/local/mysql/bin/mysql_config \     mysqli扩展技术

--enable-zip \  
--with-bz2 \
--with-jpeg-dir \                                     jpeg图片支持
--with-png-dir \                                      png图片支持
--with-freetype-dir \                                 freetype字体库支持
--without-iconv \                                     关闭iconv函数,多种字符集之间的转换
--with-libxml-dir \                                   libxml2库支持
--with-zlib-dir \                                     zlib库支持
--with-gd \                                           gd库支持
--enable-gd-native-ttf \                              TrueType字符串函数库
--with-curl \                                         curl浏览工具支持
--enable-mbstring \                                   多字节,字符串支持

--enable-sockets \                                    sockets 支持

--disable-debug                                       关闭调试模式
编译、安装
#make -j 4 && make install
复制php.ini
#cp php.ini-production /usr/local/php/etc
编辑Apache配置文件
#vi /usr/local/apache/conf/httpd.conf
查找<IfModule mod_mime.c>;
增加如下一行
AddType application/x-httpd-php .php
编辑test.php文件,测试php安装结果
#vim /usr/local/apache/htdocs/test.php
<?php
phpinfo();
?>
保存后,重启Apache
#/usr/local/apache/bin/apachectl restart
出现phpinfo页面,证明安装成功,注意查看一下加载的php.ini文件路径,正确位置为
/usr/local/php/etc/php.ini
以上,PHP安装完毕。
参考资料
http://www.php.net/manual/zh/install.unix.php                    官方安装文档
http://cn2.php.net/manual/en/faq.installation.php                官方安装文档
http://wubolu.iteye.com/blog/628371                              PHP编译说明
 
到此位置,LAMP环境安装完毕!