准备环境:操作系统:CentOS6.5

          数据库:mysql-5.1.73

          Apache:http-2.2.31

          php:php-5.6.15


此例为CentOS6.5 x86_64位系统,下载三个源码包,并保存在/usr/local/src下

mysql:http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.73-linux-x86_64-glibc23.tar.gz

Apache:http://mirrors.cnnic.cn/apache/httpd/httpd-2.2.31.tar.gz

php:http://cn2.php.net/distributions/php-5.6.15.tar.gz

1、安装mysql

进入src目录,解压mysql源码包,tar -zxvf  mysql-5.1.73-linux-x86_64-glibc23.tar.gz 并把解压好的包mv到/usr/local/mysql下(安装的源码包均放在此目录下)mv mysql-5.1.73-linux-x86_64-glibc23 /usr/local/mysql

此mysql源码包位免编译二进制源码包,进入/usr/local/mysql下

创建mysql用户及数据库存放目录并赋予权限

useradd mysql -s /sbin/nologin  /sbin/nologin表示创建的用户不能用来登录系统

mkdir -p /data/mysql   -p选项表示递归创建目录

chown -R mysql:mysql /data/mysql/  把创建的目录赋予用户及用户组

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql/  初始化数据库,规定用户名及数据库目录

cp support-files/my-large.cnf /etc/my.cnf

cp support-files/mysql.server /etc/init.d/mysqld    拷贝数据库配置文件及启动文件

chmod 755 /etc/init.d/mysqld

vim /etc/init.d/mysqld  修改文件中的datadir值 即为/data/mysql

加入开机启动项并启动服务

chkconfig --add mysqld

chkconfig mysqld on

service mysqld start

可使用ps aux |grep mysql命令查看进程


登录数据库。绝对路径 /usr/local/mysql/bin/mysql

或者把路径加入系统环境中vim /etc/profile

PATH=$PATH:/usr/local/mysql/bin

保存退出,source /etc/profile

在命令行直接输入mysql即可进入数据库操作


2、安装Apache

解压编译httpd源码包

tar -zxvf httpd-2.2.31.tar.gz

cd httpd-2.2.31

./configure --prefix=/usr/local/apache2 --with-included-apr --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --with-pcre

make && make install

注:在安装时提示错误:

wKioL1aogu6R7g8CAAAvmwnn2xo589.png

表示缺少gcc包,yum install -y gcc即可

遇到error: mod_deflate has beenrequested but can not be built due to prerequisite failures,表示要安装zlib包,yum install –y zlib-devel即可

wKiom1aogzbxkFKIAAA1ZMbhXOs200.png

yum install -y zlib-devel即可

wKioL1aog6WxFfl4AAAwrAi80HM667.png

把配置文件/usr/local/apache2/conf/httpd.conf中ServerName取消注释即可,也可改成localhost:80

启动httpd服务/usr/local/apache2/bin/apachectl start

另: /usr/local/apache2/bin/apachectl -t查看配置文件是否正确

        /usr/local/apache2/bin/apachectl -M查看Apache加载的模块

        /usr/local/apache2/bin/apachectl graceful 重新加载(重启)

查看httpd是否启动 ps aux |grep httpd

3、安装php

解压编译php,tar -zxvf php-5.6.15.tar.gz

cd php-5.6.15

./configure --prefix=/usr/local/php--with-apxs2=/usr/local/apache2/bin/apxs--with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql--with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir--with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt--enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets--enable-exif --disable-ipv6

make && make install

安装过程遇到的错误及解决方法

wKioL1aohYjBJA5gAAAYrY9A8rU717.png

yum install -y libxml2-devel

wKiom1aohUPiaS7nAAARCfdy6LE832.png

yum install -y openssl-devel

wKioL1aohYnhrR8MAAAXqfzBaW8876.png

yum install -y bzip2-devel

wKioL1aohYnRCCtbAAAQKU6FF7E626.png

yum install -y libjpeg-devel

wKioL1aohYrxKkCgAAAOKJZ_004388.png

yum install -y libpng-devel

wKioL1aohYqQ-Z40AAANHEh_XDM525.png

yum install -freetype-devel

wKiom1aohUajiwV6AAAS_U_j-T4520.png

yum install -y epel-release

yum install -y libmcrypt-devel

注:php -i |head 查看php编译参数

    php -m 查看php加载的模块

    php -i |grep 'Configuration File' 查看php.ini在哪

    /usr/local/php/bin/php -i |grep 'extension_dir'查看extension_dir路径

到此,简单的lamp环境搭建完成


Apache支持解析php

编辑httpd主配置文件 vim /usr/local/apache2/conf/httpd.conf

相同位置增加 AddType application/x-httpd-php .php

找到 DirectoryIndex index.html 并添加 index.htm index.php

添加语句:LoadModule deflate_module modules/mod_deflate.so

保存退出,重启httpd服务;在浏览器输入IP地址,出现It works表示配置成功

测试解析php,在/usr/local/apache2/htdocs/下建文件1.php 

<?php

    phpinfo();

?>

浏览器访问 ip/1.php,显示php信息表示解析成功


注:实验时请关闭iptables和selinux,iptables -F并save。selinux值为disable。

mysql Apache php安装顺序php必须为最后一个安装,mysql和Apache没顺序要求