LAMP搭建

LAMP指在linux服务器下搭建ApacheMySQLPHP服务的简称。 php

提要:全部源码包wget到/usr/local/src目录下 html

1.1 安装MySQL mysql

l 检测系统版本 linux

   cat /etc/issue sql

   uname -a 数据库

l 下载源码包 apache

   wget http://www.lishiming.net/data/attachment/forum/mysql-5.1.40-linux-i686-icc-glibc23.tar.gz vim

l 初始化 服务器

   tar -zxvf 源码包名 app

   useradd -s /sbin/nologin mysql                (建立mysql用户)

   mv 解压后的源码包 /usr/local/mysql (把mysql目录存放到此目录,通常包都放在/usr/local中)

   cd /usr/local/mysql                           (进入此目录)

   mkdir -p /data/mysql                           (用于存放数据库文件)

   chown -R mysql:mysql /data/mysql              (更改上一步建立的文件的用户属权)

   ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

##(scripts/mysql_install_db 是mysql5.1版本才有,其余高版本找配置文档,user表示定义数据库的所属主,datadir定义数据库的安装目录,这一部很关键,安装成功会显示2个OK字样)

   cp support-files/my-large.cnf  /etc/my.cnf   ##(upport-files/my-large.cnf 只有在5.1版本有,此文档是配置文档)

   cp ./support-files/mysql.server  /etc/init.d/mysqld  (support-flies/mysql.server在5.1版本,此文档是启动脚本)

   chmod 755 /etc/init.d/mysqld

   vim /etc/init.d/mysqld             

找到datadir   修改为datadir=/data/mysql 此路径是前文说起的用于存放数据库文件

   chkconfig --add mysqld   (添加系统自定义启动服务)

   chkconfig mysqld on     (开启mysqld 服务的等级权限)

   service mysqld start       (启动mysqld 自定义服务)

   ps aux |grep ‘mysqld’ (查看是否启动成功,若不成功,则在/data/mysql目录下生成一个 主机名.err的错误日志)

1.2 安装Apache

安装前须要yum如下库或包

yum install -y gcc

yum install -y zlib-devel

yum install -y pcre pcre-devel apr apr-devel

wget http://www.lishiming.net/data/attachment/forum/httpd-2.2.24.tar.bz2

解压

tar –jxvf httpd-2.2.24.tar.bz2

  cd 解压后的源码包目录下

   cd httpd-2.2XXXXX

l 编译

   ./configure \           

   --prefix=/usr/local/apache2 \        #指定安装目录位置

   --with-included-apr \              #捆绑拷贝apr/apr-util信息

   --enable-so \                     #启用DSO性能

   --enable-deflate=shared \           #压缩转换编码支持

   --enable-expires=shared \           #头部有效期控制

   --enable-rewrite=shared \           #基本的URL操纵规则,即启用URL重写规则

   -with-pcre

make

make install

   ##成功后/usr/local目录下建立一个apache2的文件夹,主配置文件为该目录下的/conf/httpd.conf

l 与PHP结合使用则须要修改httpd.conf配置文档:

在AddType application/x-gzip .gz .tgz下面增长一行

         AddType application/x-httpd-php .php

往下找到:

      <IfModule dir_module>

         DirectorIndex index.html  此行增长index.htm index.php

      </IfModule>

往下找到#ServerName www.example.com:80

修改为 SeverName localhost:80

1.3 安装PHP

l 安装前须要yum如下库或包

   yum install -y libxml2-devel

   yum install -y openssl openssl-devel

   yum install -y bzip2 bzip2-devel

   yum install -y libpng libpng-devel

   yum install -y freetype freetype-devel

   yum install -y libmcrpt libmcrpt-devel

   yum install -y libjpeg-turbo libjpeg-turbo-devel

   wget http://am1.php.net/distributions/php-5.3.27.tar.gz

解压

    tar -zvxf php-5.3.27.tar.gz

l 解压后进入源码包并编译

   ./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-mysqli --with-gd --with-jpeg-dir -with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt=/usr/local/libmcrypt --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif --disable-ivp6

make

make install

cp php.ini-production /usr/local/php/etc/php.ini    #php.ini-production文件在解压后的源码文件里

1.4 测试LAMP

l 修改apache2安装目录下的conf/httpd.conf文件

    vim /usr/local/apache2/conf/httpd.conf

在AddType application/x-gzip .gz .tgz下面增长一行

AddType application/x-httpd-php .php

往下找到:

      <IfModule dir_module>

         DirectorIndex index.html  此行增长index.htm index.php

      </IfModule>

往下找到#ServerName www.example.com:80

修改为 SeverName localhost:80

l 测试配置文件是否正确

/usr/local/apache2/bin/apachectl -t

成功会显示:Syntax OK

l 启动Apache服务器

         /usr/local/apache2/bin/apachectl start

查看是否启动成功:netstat -lnp|grep httpd

         #curl localhost 显示<html><body><h1>It work<h1>XXX表示成功

l 编辑一个PHP文件

         vim /usr/local/apache2/htdocs/1.php   #往里面写代码,就是一个页面

l 测试解析是否成功

         #curl localhost/1.php 

显示1.php的内容,表示解析成功