1、确认搭建LAMP所需要的环境是否已经安装
[root@centos6 ~]# rpm -q make gcc gcc-c++ zlib-devel libaio
备注:安装libpng时候需要zlib-devel
安装mysql时候需要libaio
2、
如果没安装则yum安装
[root@centos6 ~]# yum install make gcc gcc-c++ zlib-devel libaio -y
3、由于要使用编译安装,所以查看httpd、mysql、php是否安装,如果安装则卸载
[root@centos6 ~]# rpm -q httpd mysql php
4、编译安装libxml2
注:libxml2是一个xml的c语言版的解析器,不仅支持c语言,还支持c++、php、Pascal、Ruby、Tcl等语言的绑定
[root@centos6 LAMP]# pwd
/tmp/LAMP
[root@centos6 LAMP]# tar -zxvf libxml2-2.7.8.tar.gz
[root@centos6 LAMP]# cd ./libxml2-2.7.8
[root@centos6 libxml2-2.7.8]# ./configure --prefix=/usr/local/libxml2/
[root@centos6 libxml2-2.7.8]# make;make install
注:
libmcrypt
是加密算法扩展库。支持
DES, 3DES, RIJNDAEL, Twofish, IDEA, GOST, CAST-256, ARCFOUR, SERPENT, SAFER+
等算法。
[root@centos6 LAMP]# pwd
/tmp/LAMP
[root@centos6 LAMP]# tar -zxvf libmcrypt-2.5.8.tar.gz
[root@centos6 LAMP]# cd ./libmcrypt-2.5.8
[root@centos6 libmcrypt-2.5.8]# ./configure --prefix=/usr/local/libmcrypt/
[root@centos6 libmcrypt-2.5.8]# make;make install
6、编译安装zlib
注:
zlib
是提供数据压缩用的函式库
[root@centos6 LAMP]# pwd
/tmp/LAMP
[root@centos6 LAMP]# tar -zxvf zlib-1.2.5.tar.gz
[root@centos6 LAMP]# cd ./zlib-1.2.5
[root@centos6 zlib-1.2.5]# ./configure --prefix=/usr/local/zlib/
[root@centos6 zlib-1.2.5]# make ; make install
7、编译安装libpng
[root@centos6 LAMP]# pwd
/tmp/LAMP
[root@centos6 LAMP]# tar -zxvf libpng-1.5.4.tar.gz
[root@centos6 LAMP]# cd ./libpng-1.5.4
[root@centos6 libpng-1.5.4]#
./configure --prefix=/usr/local/libpng/ --enable-shared
[root@centos6 libpng-1.5.4]# make ; make install
8、编译安装jpeg
[root@centos6 LAMP]# pwd
/tmp/LAMP
[root@centos6 LAMP]# tar -zxvf jpegsrc.v8c.tar.gz
[root@centos6 LAMP]# cd ./jpeg-8c/
[root@centos6 jpeg-8c]# mkdir /usr/local/jpeg/
(
创建jpeg软件的安装目录)
[root@centos6 jpeg-8c]# mkdir /usr/local/jpeg/bin/
(创建存放命令的目录)
[root@centos6 jpeg-8c]# mkdir /usr/local/jpeg/lib/
(创建jpeg库文件所在目录)
[root@centos6 jpeg-8c]# mkdir /usr/local/jpeg/include/
(创建存放头文件目录)
[root@centos6 jpeg-8c]# mkdir -p /usr/local/jpeg/man/man1
(建立存放手册的目录)
[root@centos6 jpeg-8c]#
./configure --prefix=/usr/local/jpeg/ --enable-shared --enable-static(
建立共享库使用的GNU的libtool和静态库使用的GNU的libtool)
[root@centos6 jpeg-8c]# make ; make install
9、编译安装freetype
[root@centos6 LAMP]# pwd
/tmp/LAMP
[root@centos6 LAMP]# tar -zxvf freetype-2.4.6.tar.gz
[root@centos6 LAMP]# cd ./freetype-2.4.6
[root@centos6 freetype-2.4.6]#
./configure --prefix=/usr/local/freetype/ --enable-shared
[root@centos6 freetype-2.4.6]# make ;make install
10、
编译安装autoconf
[root@centos6 LAMP]# pwd
/tmp/LAMP
[root@centos6 LAMP]# tar -zxvf autoconf-2.68.tar.gz
[root@centos6 LAMP]# cd ./autoconf-2.68
[root@centos6 autoconf-2.68]# ./configure
[root@centos6 autoconf-2.68]# make ; make install
11、
编译安装GD
[root@centos6 LAMP]# pwd
/tmp/LAMP
[root@centos6 LAMP]# tar -zxvf gd-2.0.35.tar.gz
[root@centos6 LAMP]# cd ./gd-2.0.35
[root@centos6 gd-2.0.35]#
./configure --prefix=/usr/local/gd/ --with-zlib=/usr/local/zlib/ --with-jpeg=/usr/local/jpeg/ --with-png=/usr/local/libpng/ --with-freetype=/usr/local/freetype/
[root@centos6 gd-2.0.35]# make ; make install
12、
安装apache
[root@centos6 LAMP]# pwd
/tmp/LAMP
[root@centos6 LAMP]# tar -zxvf httpd-2.2.19.tar.gz
[root@centos6 LAMP]# cd ./httpd-2.2.19
[root@centos6 httpd-2.2.19]#
./configure --prefix=/usr/local/apache2/ --enable-so --enable-rewrite
[root@centos6 httpd-2.2.19]# make ; make install
[root@centos6 LAMP]# /usr/local/apache2/bin/apachectl start
[root@centos6 LAMP]#
cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd
[root@centos6 LAMP]# chmod +x /etc/init.d/httpd
[root@centos6 ~]# chkconfig --add httpd
注意:如果提示service httpd does not support chkconfig错误
解决办法:编辑/etc/rc.d/init.d/httpd在文件第二行加入
#chkconfig:2345 10 90
#description:Activates/Deactivates Apache Web Server
[root@centos6 ~]# chkconfig --level 2345 httpd on
[root@centos6 LAMP]# service httpd restart
开机自动启动apache的另一种方法:
修改/etc/rc.local文件
# vim /etc/rc.local
在文件中添加/usr/local/apache2/bin/apachectl start
注意: httpd.conf的位置在:
/etc/httpd/httpd.conf
网页目录默认在:
/usr/local/apache2/htdocs/
/
配置httpd.conf文件(/etc/httpd/conf/httpd.conf)
添加LoadModule php5_module modules/libphp5.so
找到AddType application/x-gzip .gz .tgz,在后面添加
AddType application/x-httpd-php .php
AddType application/x-httpd-php .html
(没有进行以上配置,无法支持php文件)
//
注意: httpd.conf的位置在:
/etc/httpd/httpd.conf
网页目录默认在:
/usr/local/apache2/htdocs/
/
配置httpd.conf文件(/etc/httpd/conf/httpd.conf)
添加LoadModule php5_module modules/libphp5.so
找到AddType application/x-gzip .gz .tgz,在后面添加
AddType application/x-httpd-php .php
AddType application/x-httpd-php .html
(没有进行以上配置,无法支持php文件)
//
13、
下载安装mysql
如果之前安装过mysql ,需要先卸载:
检测安装过没有:
rpm -qa | grep MySQL*
卸载:
yum remove MySQL-*
从http://dev.mysql.com/downloads/ 下载mysql community 版本,我下载的是 MySQL-5.6.20-1.el6.x86_64.rpm-bundle.tar
解压:
tar -zxvf MySQL-5.6.20-1.el6.x86_64.rpm-bundle.tar
解压出7个rpm文件,并安装:
yum install -y MySQL-server-5.6.20-1.el6.x86_64.rpm MySQL-client-5.6.20-1.el6.x86_64.rpm MySQL-devel-5.6.20-1.el6.x86_64.rpm MySQL-embedded-5.6.20-1.el6.x86_64.rpm MySQL-shared-5.6.20-1.el6.x86_64.rpm MySQL-shared-compat-5.6.20-1.el6.x86_64.rpm MySQL-test-5.6.20-1.el6.x86_64.rpm
安装完毕,启动mysql :
service mysql start
获取安装时随机生成的密码:
vim /root/.mysql_secret
使用root 登录:
mysql -u root -p
输入随机生成的密码进入,修改随机密码:
--设置新密码
mysql> set password=password('123456');
--刷新系统权限,重启服务也可以
mysql>flush privileges;
mysql> exit;
--赋予任何主机上以root身份访问数据的权限(有密码)
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
--赋予任何主机上以root身份访问数据的权限(没密码)
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
mysql>flush privileges;
--客户端登陆
mysql -h 192.168.1.197 -u root --没有密码
mysql -h 192.168.1.197 -u root -p --有密码
参考: http://blog.csdn.net/ceclar123/article/details/19615033
如果之前安装过mysql ,需要先卸载:
检测安装过没有:
rpm -qa | grep MySQL*
卸载:
yum remove MySQL-*
从http://dev.mysql.com/downloads/ 下载mysql community 版本,我下载的是 MySQL-5.6.20-1.el6.x86_64.rpm-bundle.tar
解压:
tar -zxvf MySQL-5.6.20-1.el6.x86_64.rpm-bundle.tar
解压出7个rpm文件,并安装:
yum install -y MySQL-server-5.6.20-1.el6.x86_64.rpm MySQL-client-5.6.20-1.el6.x86_64.rpm MySQL-devel-5.6.20-1.el6.x86_64.rpm MySQL-embedded-5.6.20-1.el6.x86_64.rpm MySQL-shared-5.6.20-1.el6.x86_64.rpm MySQL-shared-compat-5.6.20-1.el6.x86_64.rpm MySQL-test-5.6.20-1.el6.x86_64.rpm
安装完毕,启动mysql :
service mysql start
获取安装时随机生成的密码:
vim /root/.mysql_secret
使用root 登录:
mysql -u root -p
输入随机生成的密码进入,修改随机密码:
--设置新密码
mysql> set password=password('123456');
--刷新系统权限,重启服务也可以
mysql>flush privileges;
mysql> exit;
--赋予任何主机上以root身份访问数据的权限(有密码)
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
--赋予任何主机上以root身份访问数据的权限(没密码)
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
mysql>flush privileges;
--客户端登陆
mysql -h 192.168.1.197 -u root --没有密码
mysql -h 192.168.1.197 -u root -p --有密码
参考: http://blog.csdn.net/ceclar123/article/details/19615033
14、
编译安装php
我下载的是php-5.5.15.tar.gz,和5.3.7同理:
我下载的是php-5.5.15.tar.gz,和5.3.7同理:
[root@centos6 LAMP]# pwd
/tmp/LAMP
[root@centos6 LAMP]# tar -zxvf php-5.3.7.tar.gz
[root@centos6 LAMP]# cd ./php-5.3.7
[root@centos6 php-5.3.7]#
./configure --prefix=/usr/local/php5 --with-apxs2=/usr/local/apache2/bin/apxs --with-libxml-dir=/usr/local/lib --with-zlib --with-zlib-dir=/usr/local/lib --with-mysql --enable-soap --enable-sockets
[root@centos6 php-5.3.7]# make ; make install
[root@centos6 php-5.3.7]#
cp php.ini-development /usr/local/php5/lib/php/php.ini
#vim /usr/local/php5/lib/php/php.ini
//
这里需要将
register_globals
=Off
更改
on
模式,还有时间格式改为本地
///
///
15、
更改apache的配置文件,达到解析php文件的目的
[root@centos6 ~]# vim /usr/local/apache/conf/httpd.conf
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
Addtype application/x-httpd-php .php .phtml
Addtype application/x-httpd-php-source .phps
添加上面绿色内容,表示
apache
服务中可以解析
php
格式文件
接下来要检查
apache
目录下生成的
php
动态连接库文件,在目录
/usr/local/apache/modules
,找到是否存在
libphp5.so
文件
//
//
16、
验证
[root@centos6 ~]# vim /usr/local/apache/htdocs/index.php
添加内容为
<?php
echo phpinfo();
?>