LAMP是一个黄金组合。它是指linux,apache,mysql以及php的组合。

  首先给大家介绍下这4个东东。linux是一个开源的类unix系统,它是一个支持多用户,多任务,多进程,多cpu的操作系统。关于它的发行版主要有这三类:redhat系,debian系,slackware系。我平常用的比较多的是redhat系里的centos。而apache是一款排名领先的web服务器软件。php则是一门优秀的脚本语言,主要用于web开发。

一、安装apache

yum install -y pcre pcre-devel apr apr-devel  zlib-devel  #安装相关依赖包cd /usr/local/src/
wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.2.31.tar.gz
tar xvf httpd-2.2.31.tar.gz 
cd httpd-2.2.31
./configure --prefix=/usr/local/apache2 --sysconfdir=/etc/httpd --with-included-apr --enable-so --with-zlib --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --with-pcre
echo $?
make
echo $?
make install
echo $?

注意:只有echo $?返回的是0,才说明编译安装成功。

二、安装mysql


http://mirrors.sohu.com/mysql/MySQL-5.1/   Mysql下载网站
cd /usr/local/src/
wget http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.72-linux-i686-glibc23.tar.gz
tar zxvf mysql-5.1.72-linux-i686-glibc23.tar.gz 
mv mysql-5.1.72-linux-i686-glibc23 /usr/local/mysql
cd ../ 
ll 
useradd -s /sbin/nologin -M mysql
mkdir -p /data/mysql
chown -R mysql:mysql /data/mysql
cd mysql/
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql    #初始化数据
echo $?
 
cp /etc/my.cnf /etc/my.cnf.bak                         #备份配置文件
cp support-files/my-large.cnf /etc/my.cnf            #复制配置模板到
vim /etc/my.cnf           编译MySql配置文件
#log-bin=mysql-bin            #记录查询、删除、更新数据时记录日志,配置MySql主从时需要,这里暂时不需要,先注释
#binlog_format=mixed
#server-id      = 1
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld    #复制启动脚本到init.d目录下
 vim /etc/init.d/mysqld               #编辑启动配置文件,指定数据目录
basedir=/usr/local/mysql
datadir=/data/mysql
 
vim /etc/profile.d/path.sh         #将mysql添加进PATH路径#!/bin/bashexport PATH=$PATH:/usr/local/mysql/bin/source !$    #更新PATH路径echo $PATH    #查看是否生效/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin/
chkconfig --add mysqld             #开机启动
chkconfig mysqld on
 
/etc/init.d/mysqld start              #启动服务
Starting MySQL... SUCCESS! 
netstat -tnplu | grep mysql
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      1282/mysqld  
如果启动不了,请到 /data/mysql/ 下查看错误日志,这个日志通常是主机名.err.
 
错误1:
Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解决方法:
yum install  libaio-devel –y
 
错误2:
./bin/my_print_defaults: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
解决方法:
下载64位数据库
 
错误3:
Starting MySQL.Manager of pid-file quit without updating fi[FAILED]
解决方法:
vim /etc/init.d/mysqld               #编辑启动配置文件,指定数据目录
basedir=/usr/local/mysql
datadir=/data/mysql

三、PHP编译安装


cd /usr/local/src/ 
wget http://mirrors.sohu.com/php/php-5.5.31.tar.gz
tar xf php-5.5.31.tar.gz 
 
yum install  zlib libxml libjpeg freetype libpng gd curl libiconv zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gb-devel gb-devel curl-devel  libxslt-devel openssl-devel  bzip2 bzip2-devel  libmcrypt-devel.x86_64 -y    #安装依赖包
cd php-5.5.31
 
 ./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       #编译参数
echo $?
make
echo $?
make install 
echo $?

3.2PHP的配置


cp /usr/local/src/php-5.5.31/php.ini-production /usr/local/php/etc/php   #复制配置文件
apachectl graceful  重新加载PHP配置文件

四、测试PHP解析



vim /usr/local/apache2/conf/httpd.conf
#找到
#AddType application/x-gzip .tgz
#添加一行:
AddType application/x-httpd-php .php
#添加index.php
DirectoryIndex index.html index.php
/usr/local/apache2/bin/apachectl -t    #检测语法
Syntax OK


cd /usr/local/apache2//htdocs     #编写一个php文件
 vim info.php


/usr/local/php/bin/php -i | less         #测试,同时也记录PHP编译参数
phpinfo()
PHP Version => 5.5.31
System => Linux lab-1-c6.7-x32 2.6.32-573.el6.i686 #1 SMP Thu Jul 23 12:37:35 UTC 2015 i686
Build Date => Jan 19 2016 10:09:40
Configure Command =>  
'./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'



测试方法:在浏览器上打开http://192.168.1.26/info.php,如果出现phpinfo的函数页面,则说明LAMP安装成功。