lamp环境安装过程与自己的一点总结
Linux系统下源代码包方式
安装前准备
? 本节的源代码包安装方式,使用的Linux操作系统主要以Red Hat Linux操作系统系列为主。
? 假设读者在电脑中已经安装好了Red Hat系列中的某一版本的操作系统,就可以按下面几种方式做安装前的准备工作了。
获取软件包
软件名称 下载地址
httpd-2.2.9.tar.gz http://www.apache.org/
mysql-5.0.41.tar.gz http://dev.mysql.com/downloads/
php-5.2.6.tar.gz http://www.php.net/downloads.php
phpMyAdmin-3.0.0-rc1-all-languages.tar.gz http://www.phpmyadmin.com/
libxml2-2.6.30.tar.gz ftp://ftp.gnome.org/pub/GNOME/sources/libxml2/2.6/libxml2-2.6.30.tar.gz
libmcrypt-2.5.8.tar.gz http://prdownloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz?use_mirror=peterhost
zlib-1.2.3.tar.gz http://www.zlib.net/zlib-1.2.3.tar.gz
gd-2.0.35.tar.gz http://www.libgd.org/releases/gd-2.0.35.tar.gz
Autoconf-2.61.tar.gz ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.61.tar.gz
freetype-2.3.5.tar.gz http://download.savannah.gnu.org/releases/freetype/freetype-2.3.5.tar.gz
libpng-1.2.31.tar.gz ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.2.31.tar.gz
jpegsrc.v6b.tar.gz http://www.ijg.org/files/jpegsrc.v6b.tar.gz
ZendOptimizer330a.tar.gz http://wt1.mycodes.net/soft/20071108/ZendOptimizer330a.tar.gz
检查安装时使用的编译工具是否存在 Gcc –v
卸载默认的低版本环境
目前发行的Linux操作系统版本中,如果选择默认全部安装,就已经安装了LAMP环境,但是版本相对都比较低。我们可以再安装一个LAMP环境和原来的
并存,但是这样做没有必要,因为同时只能开启一个LAMP环境。所要我们要在安装之前,先应检查一下系统中是否已经安装了低版本的环境,如果已经
安装过了,停止原来的服务运行,或者把原来的环境卸载掉。
编译安装过程介绍
? 一、解压tar.gz为后缀的压缩软件包
? 二、在Linux系统中源代码包安装过程
? 配置(configure)
? 编译(make)
? 安装(make install)
各个软件编译安装顺序
搭建LAMP环境时,需要安装的所有软件都要按照一定的顺序安装,我们按Apache->MySQL->PHP顺序安装。但在安装PHP之前,应先安装PHP5需要的最新
版本库文件,例如libxml2、libmcrypt以及GD2库等文件。安装GD2库是为了让PHP5支持GIF、PNG和JPEG图片格式,所以在安装GD2库之前还要先安装最
新的zlib、libpng、freetype和jpegsrc等库文件。而且中间还会穿插安装一些软件。读者可以按照本节提供的顺序安装
所以安装的顺序为:
1、 libxml2
2、 libmcrypt
3、 zlib
4、 libpng
5、 jpeg6
6、 freetype
7、 autoconf
8、 GD库文件
9、 Apache--- httpd
10、 MySQL
11、 PHP
12、 Zend加速器
13、 phpMyAdmin
在安装前先解压各个安装包:
转换到安装包的目录:
cd /home/gxllll
然后进行解压:
tar zxvf 软件安装包名称
安装各个软件,都要转换到各个软件解压的目录
例如:cd /home/gxlll/php-5.3.6
安装libxml2最新库文件
? ./configure --prefix=/usr/local/libxml2
? # make
? # make install
安装libmcrypt最新库文件
? ./configure --prefix=/usr/local/libmcrypt
? # make
? # make install
安装zlib最新库文件
? #./configure --prefix=/usr/local/zlib
? # make
? # make install
安装libpng最新库文件
? # ./configure --prefix=/usr/local/libpng
? # make
? # make install
安装jpeg6最新库文件
? #mkdir /usr/local/jpeg6 //建立jpeg6软件安装目录
? # mkdir /usr/local/jpeg6/bin //建立存放命令的目录
? # mkdir /usr/local/jpeg6/lib //创建jpeg6库文件所在目录
? # mkdir /usr/local/jpeg6/include //建立存放头文件目录
? # mkdir -p /usr/local/jpeg6/man/man1 //建立存放手册的目录
? # ./configure \
? > --prefix=/usr/local/jpeg6/ \
? > --enable-shared \ //建立共享库使用的GNU的libtool
? > --enable-statc //建立静态库使用的GNU的libtool
? Make && make install
安装freetype最新库文件
? # ./configure --prefix=/usr/local/freetype
? # make
? # make install
安装autoconf最新的库文件
? # ./configure
? # make
? # make install
安装最新的GD库文件
? #./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
安装新版本的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服务器
? 检查安装目录
? 检查配置文件目录
? /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
? 添加自启动
安装MySQL数据库管理系统
# groupadd mysql //添加一个mysql标准组
? useradd -g mysql mysql //添加mysql用户并加到mysql组中
? # ./configure \
? > --prefix=/usr/local/mysql \
? > --with-extra-charsets=all
? #make && make install
配置MySQL数据库
? 创建MySQL数据库服务器的配置文件
? # cp support-files/my-medium.cnf /etc/my.cnf //把mysql的配置文件拷贝到 /etc/my.cnf
? bin/mysql_install_db --user=mysql //创建授权表,以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>select * from mysql.user \G //查看mysql的所有用户
? mysql> DELETE FROM mysql.user WHERE Host!='localhost' ; //删除所有主机不是localhost的用户
? mysql> FLUSH PRIVILEGES; //刷新mysql
? mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
? # bin/mysql -u root -h localhost –p //回车进入MySQL客户端
? # bin/mysqladmin -u root –p shutdown //关闭MySQL数据库
增加apache,mysql自启动: //netstat -tnl 查看端口情况
echo "/user/local/apache2/bin/apachectl start" >> /etc/rc.local //设置apache的自启动程序 ,端口号为80
echo "/user/local/mysql/bin/mysql_safe --user==mysql &" >> /etc/rc.local //设置mysql的自启动程序,端口号为3306
安装最新版本的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
LAMP环境整合
? ]# cp php.ini-dist /usr/local/php/etc/php.ini //创建配置文件 php.in-development php.ini-pronduction
? vi /etc/httpd/httpd.conf //使用vi编辑apache配置文件
? Addtype application/x-httpd-php .php .phtml #添加这一条
? # vi test.php //编辑test.php文件
? <?php
? phpinfo();
? ?>
安装Zend加速器
? ./install.sh //执行安装
phpMyAdmin的安装
? cp phpMyAdmin-3.0.0-rc1-all-languages phpmyadmin
cp phpmyadmin /usr/local/apache2/htdocs/phpmyadmin //拷贝目录到指定位置并改名为phpmyadmin
vi /user/local/apache2/htdocs/phpmyadmin/libraries/config.default.php //修改phpmyadmin的配置文件
phpMyAdmin的配置
? http身份验证模式
? cookie身份验证模式
? config身份验证模式
总结
? 掌握Linux+Apache+MySQL+PHP的编辑安装过程
? 完成环境整合
apache的配置文件: /etc/httpd/httpd.conf
mysql的配置文件: /etc/my.cnf
php的配置文件: /usr/local/php/etc/php.ini
phpmyadmin的配置文件: /user/local/apache2/htdocs/phpmyadmin/libraries/config.default.php
开启apache服务器: /user/local/apache2/bin/apachectl start
开启mysql服务器: /user/local/mysql/bin/mysql_safe --user==mysql &
进入mysql数据库: cd /user/local/mysql bin/mysql -u root -h localhost -p 再加上密码即可