阿里云centos6.2lamp源码安装手记

前些日子,获得一枚阿里云的优惠券,于是弄了台低配服务器,装centos6.2安全加固版。本来想用yum方式搭建lamp环境,结果装完php页面无法解析,搜索半天也不知道怎么解决,于是索性用源码包搭建lamp环境。手头有一个lamp源码安装的笔记,但是里边软件版本都很低,而且有些软件是用不着的,所以我边参考各软件官方的安装文档边写下此文。

1.软件编译需要用到gcc,但是阿里云的服务器默认不允许安装编译软件,修改/etc/yum.conf将下面一句话注释掉即可:

之后

安装好编辑环境。

2.安装apache

apache依赖以下几个包

apr和apr-util可以从http://apr.apache.org/download.cgi获取相应源码,通过以下两条命令将它们解压到apache源码包的srclib目录里

再进入srclib目录下将这两个文件夹改名,去掉版本号(安装文档要求)。

至于pcre,为了省事,直接yum安装就好了

现在,进入apache源码包目录,执行以下命令进行安装

到此,apache已安装完成,运行apache

通过浏览器访问,apache正常工作。

3.安装mysql

mysql的源码可以从http://www.mysql.com/downloads/mysql/获取,注意选择下载源码包。

从5.5版本开始,编译mysql需要使用cmake,直接yum intall cmake搞定

通过以下命令安装mysql。参考了《Linux安装mysql——源码安装》

cmake参数说明:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql        //安装目录

-DINSTALL_DATADIR=/usr/local/mysql/data         //数据库存放目录

-DDEFAULT_CHARSET=utf8                        //使用utf8字符

-DDEFAULT_COLLATION=utf8_general_ci            //校验字符

-DEXTRA_CHARSETS=all                            //安装所有扩展字符集

-DENABLED_LOCAL_INFILE=1                        //允许从本地导入数据

注意事项:

重新编译时,需要清除旧的对象文件和缓存信息。

# make clean

# rm -f CMakeCache.txt

# rm -rf /etc/my.cnf

启动mysql后,记得要给mysql的root用户加密码

4.安装php

安装php的关键在于configure时指定apache的目录和mysql的目录及开启一些常用功能

参数说明:

–prefix=/usr/local/php 指定安装目录

–with-config-file-path=/usr/local/php/etc/ 指定配置文件目录

–with-apxs2=/usr/local/apache/bin/apxs 指定apache目录

–with-mysql=/usr/local/mysql/

–with-mysqli=/usr/local/mysql/bin/mysql_config 指定mysql目录和mysqli目录

–enable-soap 开启soap协议支持,可选

–enable-mbstring=all 开启多字节支持

–enable-sockets 开启socket,可选

–with-pdo-mysql 这个最好加上,不然将来用pdo时是个麻烦

安装完php后,将配置文件复制到指定的目录下,进行相关设置

之后,修改apache的配置文件,使其支持php

重启apache服务,在htdocs里写个经典的phpinfo.php,测试成功。

至此,lamp环境搭建完成。有些库比如gd库等并不是lamp环境必须的东西,所以没有出现在本文中,将来需要的时候可以自行添加。