LAMP 环境搭建

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LAMP 环境搭建相关的知识,希望对你有一定的参考价值。

1.0   mysql 的安装

MySQL的安装方式有4种: yum/rpm包安装    二进制安装     源码编译安装     源码软件结合

二进制包名与源码包名区别如下:

二进制包名:  mysql-5.5.32-linux2.6-x86.tar.gz

源 码 包 名:  mysql-5.5.32.tar.gz


安装步骤如下:

1、创建mysql用户账号    

         # useradd  -s  /sbin/nologin  -M  mysql  

2、进入安装软件的固定目录下载MySQL 软件包

   1) #  cd  /usr/local/src      注:此目录可作为专门存放所有安装软件的固定目录

   2) # wget 下载网址(或者是利用工具导进去)

3、解压并移动 MySQL 二进制软件包到指定的安装路径

    1) #   tar  zxvf  mysql-5.5.32-linux2.6-x86.tar.gz

    2) #   mv  mysql-5.5.32  /usr/local/mysql  

    3) #   cd    /usr/local/mysql

4、初始化 MySQL 配置文件 my.cnf

          #  /bin/cp support-files/my-large.cnf /etc/my.cnf

注:support-files下有my.cnf的5种不同的配置模板, 在生产环境中这5种不同的配置模板对服务器硬件的要求从低到高依次为:

my-medium.cnf      my-small.cnf       my-large.cnf      my-huge.cnf

my-innodb-heavy-4G.cnf

5、初始化 MySQL 数据库文件

1)  #  mkdir -p  /data/mysql                            建立 MySQL 数据文件目录

2)  #  chown -R mysql:mysql  /data/mysql      授权MySQL用户管理 MySQL 的安装目录

3)  # ./scripts/mysql_install_db  --basedir=/usr/local/mysql   --datadir=/data/mysql  --        user=mysql

                          出现两个OK字样,表示初始化成功,否则要解决初始化的问题

echo $?              检查安装情况

6、设置 MySQL 启动脚本

1) # cp  ./support-files/mysql.server  /etc/init.d/mysqld      拷贝 MySQL 启动脚本到 

                                                                                                 MySQL 的命令路径

2) # chmod  +x  /etc/init.d/mysqld     或者

             chmod 755 /etc/init.d/mysqld

3) # vim /etc/init.d/mysqld  

                      basedir=/usr/local/mysql  

                      datadir=/data/mysql

7、启动数据库并检查启动是否成功

1)    #  /etc/init.d/mysqld  start      启动

2)    # ps aux |grep mysql              或    

         # netstat  -lnptu |grep mysql    

                      检查是否启动成功,如果启动提示有错误,查看错误日志,根据错误日志排除问题

8、查看  MySQL 数据库启动结果日志

      MySQL错误日志路径  /data/mysql/www.err   错误日志通常以   主机名. err 来命名

9、设置 MySQL 开机自启

1)  #  chkconfig  --add  mysqld    加入到开机自启

2)  #  chkconfig  mysqld  on         设置开机自启

3)  #  chkconfig  --list  mysqld      检查 MySQL 在系统各运行级别的启动情况

10、配置 mysql 命令的全局使用路径

1) # echo  ‘export  PATH=/usr/local/mysql/bin:$PATH‘ >> /etc/profile  

                                                    注:echo 后面是单引号

2) #   tail  -1   /etc/profile         检查上面添加的配置是否成功

3) #   source  /etc/profile          立即生效

4) #   echo  $PATH                    查看设置结果

11、登陆 MySQL 测试

           #  mysql    

另外还有其他三种命令登陆方式:    

1) #   mysql  -uroot  -p

2) #   mysql  -uroot

3) #   mysql  -uroot  -p密码

12、为 MySQL 的root 用户设置密码

      # mysqladmin -u root password  ‘密码’

           # mysql -uroot -p密码

1.1  Apache 的安装

# cd /usr/local/src/
# wget 二进制包

# tar zxvf httpd-2.2.16.tar.gz

            配置编译参数:

# cd httpd-2.2.16
# ./configure \
--prefix=/usr/local/apache2 \
--with-included-apr \
--enable-so \
--enable-deflate=shared \
--enable-expires=shared \
--enable-rewrite=shared \
--with-pcre

--prefix 指定安装到哪里, --enable-so 表示启用DSO [1] --enable-deflate=shared 表示共享的方式编译deflate,后面的参数同理。

error: mod_deflate has been requested but can not be built due to prerequisite failures

解决办法是:

           yum install -y zlib-devel

为了避免在make的时候出现错误,所以最好是提前先安装好一些库文件:

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

编译,安装:

# make

# make install

以上两个步骤都可以使用 echo $? 来检查是否正确执行,否则需要根据错误提示去解决问题。

1.2 php 的安装

# cd /usr/local/src
# wget http://am1.php.net/distributions/php-5.3.27.tar.gz

# tar zxf php-5.3.27.tar.gz

                           配置编译参数:

# cd php-5.3.27
# ./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

注:

configure: error: xml2-config not found. Please check your libxml2 installation.

解决办法是:            yum install -y libxml2-devel


configure: error: Cannot find OpenSSL‘s <evp.h>

解决办法是:            yum install -y openssl openssl-devel


checking for BZip2 in default path... not found
configure: error: Please reinstall the BZip2 distribution

解决办法:               yum install -y bzip2 bzip2-devel


configure: error: png.h not found.

解决办法:               yum install -y libpng libpng-devel


configure: error: freetype.h not found.

解决办法:               yum install -y freetype freetype-devel


configure: error: mcrypt.h not found. Please reinstall libmcrypt.

解决办法:                rpm -ivh "rpm 包地址"
                              yum install -y  libmcrypt-devel

                                 因为centos6.x 默认的yum源没有 libmcrypt-devel  包,只能借助第三方yum源。

            编译安装:

# make

# make install

            拷贝配置文件:

                  # cp php.ini-production /usr/local/php/etc/php.ini


1.3  apache结合php

Apache主配置文件为:/usr/local/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>
    DirectoryIndex index.html
</IfModule>

将该行改为:

<IfModule dir_module>
    DirectoryIndex index.html index.htm index.php
</IfModule>

找到:

#ServerName www.example.com:80

修改为:

ServerName localhost:80

1.4  测试LAMP是否成功

启动apache之前先检验配置文件是否正确:

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

如果有错误,请继续修改httpd.conf, 如果是正确的则显示为 “Syntax OK”,

启动apache的命令为:

# /usr/local/apache2/bin/apachectl start

查看是否启动:

# netstat -lnp |grep httpd
tcp        0      0 :::80                       :::*   LISTEN      7667/httpd

如果有显示这行,则启动了。 也可以使用curl命令简单测试:

# curl localhost
<html><body><h1>It works!</h1></body></html>


测试是否正确解析php:

vim /usr/local/apache2/htdocs/1.php

写入:

<?php
    echo "php解析正常";
?>

:wq

# curl localhost/1.php
php解析正常[[email protected] ~]#

显示这样则表示解析正确

初次使用浏览器访问web服务的时候,可能无法访问,这是因为防火墙的缘故。请运行下面的命令:

# iptables -F


以上是关于LAMP 环境搭建的主要内容,如果未能解决你的问题,请参考以下文章

Linux手动搭建LAMP环境

LAMP环境搭建

LAMP 环境搭建

搭建LAMP环境

源码编译搭建LAMP环境

LAMP环境搭建教程