您的位置:首页 > 运维架构 > Linux

CentOS下源码搭建LAMP

2015-06-27 09:52 591 查看
1、安装包都下载好放到/usr/local/src/下

2、查看是否系统里已经有apache服务器、php、mysql,有就需要将旧版本删除

gcc -v 查看是否有gcc编译器,没有需下载(因为源代码安装需要先编译)

rpm -qa | grep httpd

rpm -qa | grep mysql

rpm -qa | grep php

3、解压并删除/usr/local/src/下的安装包

tar zxvf autoconf-2.61.tar.gz

......13个压缩包都按上面的方法解压

解压后 rm -rf *.gz(删除所有压缩包)

4、开始安装

(1)安装libxml2库文件

cd /usr/local/src/libxml2-2.6.30/

./configure --prefix=/usr/local/libxml2 (configure配置, prefix指定安装目录)

make (编译)

make install (安装)

安装后 cd /usr/local/libxml/

ls 查看到 bin include lib man share 文件夹即安装成功

(2)安装libmcrypt库文件

cd /usr/local/src/libmcrypt-2.5.8/

./configure --prefix=/usr/local/libmcrypt

出错:error: C++ compiler cannot create executables

See `config.log' for more details.

解决办法:yum install gcc-c++(注意连网)

重新安装:cd /usr/local/src/libmcrypt-2.5.8/

./configure --prefix=/usr/local/libmcrypt

make && make install

(3)安装zlib库文件

cd /usr/local/src/zlib-1.2.3/

./configure --prefix=/usr/local/zlib

make && make install

同样 cd /usr/local/zlib

ls 检验是否安装成功

(4)安装libpng库文件

cd ..

cd src/libpng-1.2.31/

./configure --prefix=/usr/local/libpng

出错:configure: error: zlib not installed

解决:进入zlib目录,执行
make clean命令

重新配置zlib

./configure (后面不要有参数了)

make && make install

重新配置libpng:./configure --prefix=/usr/local/libpng

make && make install

(5)安装jpeg6库文件

mkdir /usr/local/jpeg6

mkdir /usr/local/jpeg6/bin

mkdir /usr/local/jpeg6/lib

mkdir /usr/local/jpeg6/include

mkdir -p /usr/local/jpeg6/man/man1

cd /usr/local/src/jpeg-6b/

# ./configure \

> --prefix=/usr/local/jpeg6/ \

> --enable-shared \ //建立共享库使用的GNU的libtool

> --enable-static //建立静态库使用的GNU的libtool

make && make install

(6)安装freetype库文件

cd ..

cd freetype-2.3.5/

./configure --prefix=/usr/local/freetype/

make && make install

(7)安装autoconf的库文件

cd ..

cd autoconf-2.61/

./configure

make && make install

(8)安装GD库文件

cd ..

cd gd-2.0.35/

#./configure \ //配置命令

> --prefix=/usr/local/gd2/ \ //指定软件安装的位置

> --with-zlib=/usr/local/zlib/ \ //指定到哪去找zlib库文件的位置

> --with-jpeg=/usr/local/jpeg6/ \ //指定到哪去找jpeg库文件的位置

> --with-png=/usr/local/libpng/ \ //指定到哪去找png库文件的位置

> --with-freetype=/usr/local/freetype/ //指定到哪去找freetype 2.x字体库的位置

出错:make[2]: *** [gd_png.lo] Error 1

make[2]: Leaving directory `/tmp/gd-2.0.35'

make[1]: *** [all-recursive] Error 1

make[1]: Leaving directory `/tmp/gd-2.0.35'

make: *** [all] Error 2

解决:vi gd_png.c

找到“png.h”改成“/usr/local/libpng/include/png.h”

#./configure \ //配置命令

> --prefix=/usr/local/gd2/ \ //指定软件安装的位置

> --with-zlib=/usr/local/zlib/ \ //指定到哪去找zlib库文件的位置

> --with-jpeg=/usr/local/jpeg6/ \ //指定到哪去找jpeg库文件的位置

> --with-png=/usr/local/libpng/ \ //指定到哪去找png库文件的位置

> --with-freetype=/usr/local/freetype/ //指定到哪去找freetype 2.x字体库的位置

make && make install

(9)安装Apache服务器

./configure \ //执行当前目录下软件自代的配置命令

> --prefix=/usr/local/apache2 \ //指定Apache软件安装的位置

> --sysconfdir=/etc/httpd \ //指定Apache服务器的配置文件存放位置

> --with-z=/usr/local/zlib/ \ //指定zlib库文件的位置

> --with-included-apr \ //使用捆绑APR/APR-Util的副本

> --enable-so \ //以动态共享对象(DSO)编译

> --enable-deflate=shared \ //缩小传输编码的支持

> --enable-expires=shared \ //期满头控制

> --enable-rewrite=shared \ //基于规则的URL操控

> --enable-static-support //建立一个静态链接版本的支持

make && make install

测试Apache服务器

检查安装目录 ls /usr/local/apache2

检查配置文件目录 ls /etc/httpd/ ls /usr/local/apache2/bin/

/usr/local/apache2/bin/apachectl start

//启动Apache

/usr/local/apache2/bin/apachectl stop

//关闭Apache

# netstat -tnl|grep 80 //查看80端口是否开启
http://localhost/去访问Apache服务器
echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.d/rc.local

添加自启动

vim /etc/httpd/httpd.conf 配置文件

添加LoadModule php5_module modules/libph5.so

****服务器启动不了时记得在防火墙中允许80端口(我是在图形界面改的)

cd /usr/local/apache2/htdocs/

vi demo.html

vi test.php

(10)安装MySQL数据库管理系统

cd /usr/local/src/mysql-5.0.41/

groupadd mysql

//添加一个mysql标准组

useradd -g mysql mysql

//添加mysql用户并加到mysql组中

./configure \

> --prefix=/usr/local/mysql \

> --with-extra-charsets=all

出错:checking for termcap functions library... configure: error: No curses/termcap library found

解决:yum install ncurses-devel

重新安装:

./configure \

> --prefix=/usr/local/mysql \

> --with-extra-charsets=all

make && make install

配置MySQL数据库

创建MySQL数据库服务器的配置文件

# cp support-files/my-medium.cnf /etc/my.cnf

cd mysql/

bin/mysql_install_db --user=mysql

//创建授权表

# chown -R root . //将文件的所有属性改为root用户

# chown -R mysql var //将数据目录的所有属性改为mysql用户

# chgrp -R mysql . //将组属性改为mysql组

# /usr/local/mysql/bin/mysqld_safe --user=mysql & 启动数据库

# netstat -tnl|grep 3306 //查看3306端口是否开启

# bin/mysqladmin version //简单的测试

# bin/mysqladmin variables //查看所有mysql参数

# bin/mysql -u root //没有密码可以直接登录本机服务器

mysql> DELETE FROM mysql.user WHERE Host='localhost' AND User='';

mysql> FLUSH PRIVILEGES;

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');

# bin/mysql -u root -h localhost –p //回车进入MySQL客户端

# bin/mysqladmin -u root –p shutdown //关闭MySQL数据库

(11)安装PHP模块

# ./configure \ //执行当前目录下软件自代的配置命令

> --prefix=/usr/local/php \ //设置PHP5 的安装路径

> --with-config-file-path=/usr/local/php/etc \ //指定PHP5配置文件存入的路径

> --with-apxs2=/usr/local/apache2/bin/apxs \ //告诉PHP查找Apache 2的地方

> --with-mysql=/usr/local/mysql/ \ //指定MySQL的安装目录

> --with-libxml-dir=/usr/local/libxml2/ \ //告诉PHP放置libxml2库的地方

> --with-png-dir=/usr/local/libpng/ \ //告诉PHP放置libpng库的地方

> --with-jpeg-dir=/usr/local/jpeg6/ \ //告诉PHP放置jpeg库的地方

> --with-freetype-dir=/usr/local/freetype/ \ //告诉PHP放置freetype库的地方

> --with-gd=/usr/local/gd2/ \ //告诉PHP放置gd库的地方

> --with-zlib-dir=/usr/local/zlib/ \ //告诉PHP放置zlib库的地方

> --with-mcrypt=/usr/local/libmcrypt/ \ //告诉PHP放置libmcrypt库的地方

> --with-mysqli=/usr/local/mysql/bin/mysql_config \ //变量激活新增加的MySQLi功能

> --enable-soap \ //变量激活SOAP和Web services支持

> --enable-mbstring=all \ //使多字节字符串支持

> --enable-sockets //变量激活socket通讯特性

#make && make install

(12)LAMP坏境整合

# cp php.ini-dist /usr/local/php/etc/php.ini //创建配置文件

vi /etc/httpd/httpd.conf //使用vi编辑apache配置文件

Addtype application/x-httpd-php .php .phtml #添加这一条

# vi test.php //编辑test.php文件

<?php

phpinfo();

?>

vi /usr/local/php/etc/php.ini

(13)安装Zend加速器

cd /usr/local/srcZendOptimizer-3.2.6-linux-glibc21-i386

./install.sh

(14)phpMyAdmin的安装

cp -a phpMyAdmin-3.0.0-rc1-all-languages \

/usr/local/apache2/htdocs/phpmyadmin //拷贝目录到指定位置并改名为phpmyadmin

cd /usr/local/apache2/htdocs/phpmyadmin/

cp config.sample.inc.php config.inc.php
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: