CentOS 6.8编译安装httpd2.2.31+MySQL5.6.31+PHP5.3.27

 

说明:
   操作系统:CentOS 6.8 32位

准备篇:

、系统约定
    软件源代码包存放位置:/usr/local/src
    源码包编译安装位置:/usr/local/软件名字

二、下载软件包
httpd2.2.31.tar.gz

MySQL5.6.31.tar.gz

PHP5.3.27.tar.gz

三、安装编译工具及库文件(使用CentOS yum命令安装)
yum –y install gcc make gcc-c++ cmake perl-devel zlib-devel pcre pcre-devel curl libcurl libcurl-devel apr apr-devel libxml2-devel openssl openssl-devel bzip2 bzip2-devel libpng libpng-devel libjpeg libjpeg-devel freetype freetype-devel ncurses-devel epel-release

yum –y install libmcrypt-devel

注:需先安装epel-release之后才能安装 libmcrypt-devel

安装篇

安装mysql
useradd -r mysql -s /bin/nologin  #创建系统用户mysql及用户组mysql
mkdir -p /data/mysql  #创建MySQL数据库存放目录

mkdir -p /usr/local/mysql #创建MySQL安装目录
chown -R mysql:mysql /data/mysql /usr/local/mysql  #设置MySQL数据及安装目录权限

cd /usr/local/src
tar zxvf mysql-5.6.31.tar.gz  #解压
cd mysql-5.6.31
#配置编译参数

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql  -DMYSQL_DATADIR=/data/mysql  -DSYSCONFDIR=/etc
make && make install  #编译+安装
cd /usr/local/mysql
cp ./support-files/my-default.cnf  /etc/my.cnf   #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)

vi /etc/my.cnf   #编辑配置文件,在 [mysqld] 部分增加
  datadir = /data/mysql  #添加MySQL数据库路径

./scripts/mysql_install_db --user=mysql  #生成mysql系统数据库
  cp ./support-files/mysql.server  /etc/rc.d/init.d/mysqld  #把Mysql加入系统启动
  chmod 755 /etc/init.d/mysqld   #增加执行权限
  chkconfig mysqld on  #加入开机启动

vi /etc/rc.d/init.d/mysqld  #编辑
  basedir = /usr/local/mysql   #MySQL程序安装路径
  datadir = /data/mysql  #MySQl数据库存放目录

service mysqld start  #启动
  vi /etc/profile   #把mysql服务加入系统环境变量:在最后添加下面这一行
  export PATH=$PATH:/usr/local/mysql/bin

下面这两行把myslq的库文件链接到系统默认的位置,这样你在编译类似PHP等软件时可以不用指定mysql的库文件地址。
 ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
 ln -s /usr/local/mysql/include/mysql /usr/include/mysql

shutdown -r now     #重启系统,等待系统重新启动之后继续在终端命令行下面操作
 mysql_secure_installation    #设置Mysql密码
 根据提示按Y 回车输入2次密码
 或者直接修改密码/usr/local/mysql/bin/mysqladmin -u root -p password"123456"

service mysqld restart  #重启

到此,mysql安装完成!

安装 apache

cd /usr/local/src
 tar zxvf httpd2.2.31.tar.gz  #解压
 cd httpd2.2.31

#配置编译参数

./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  --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  #编译+安装

apache安装完成!

安装 php

cd /usr/local/src
 tar zxvf php5.3.27.tar.gz   #解压
 cd php5.3.27.tar.gz

#配置编译参数

./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.

解决办法:

yum install –y epel-release

yum install -y  libmcrypt-devel

make && make install  #编译+安装

拷贝配置文件:

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

 

apache结合php

Apache主配置文件为:/usr/local/apache2/conf/httpd.conf

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

找到:

<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

找到:

AddType application/x-gzip .gz .tgz

在该行下面添加:

AddType application/x-httpd-php .php

测试LAMP是否成功:

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

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

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

启动apache的命令为:

/usr/local/apache2/bin/apachectl start

查看是否启动:

[root@localhost ~]# netstat -lnp |grep httpd

tcp        0      0 :::80                       :::*   LISTEN      7667/httpd

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

[root@localhost ~]# curl localhost

<html><body><h1>It works!</h1></body></html>

只有显示这样才正确。

测试是否正确解析php:

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

写入:

<?php

echo "php解析正常";

?>

保存后,继续测试:

curl localhost/1.php

看是否能看到如下信息:

[root@localhost ~]# curl localhost/1.php

php解析正常

只有显示这样才正确

 

到此,LAMP基本运行环境搭建完成!

CentOS 6.8编译安装httpd2.2.31+MySQL5.6.31+PHP5.3.27的更多相关文章

  1. CentOS 6.2编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.13

    CentOS 6.2编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.132013-10-24 15:31:12标签:服务器 防火墙 file 配置文件 written 一.配置好I ...

  2. CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14

    准备篇: CentOS 7.0系统安装配置图解教程 http://www.osyunwei.com/archives/7829.html 一.配置防火墙,开启80端口.3306端口 CentOS 7. ...

  3. CentOS 6.6编译安装Nginx1.6.2+MySQL5.6.21+PHP5.6.3

    http://www.osyunwei.com/archives/8867.html 一.配置防火墙,开启80端口.3306端口 vi /etc/sysconfig/iptables #编辑防火墙配置 ...

  4. CentOS 6.2编译安装Nginx1.2.0+MySQL5.5.25+PHP5.3.13+博客系统WordPress3.3.2

    说明: 操作系统:CentOS 6.2 32位 系统安装教程:CentOS 6.2安装(超级详细图解教程): http://www.osyunwei.com/archives/1537.html 准备 ...

  5. CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14方法分享

    一.配置防火墙,开启80端口.3306端口 CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop fi ...

  6. CentOS 7.x编译安装Nginx1.10.3+MySQL5.7.16+PHP5.2 5.3 5.4 5.5 5.6 7.0 7.1多版本全能环境

    准备篇 一.防火墙配置 CentOS 7.x默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop firewalld.se ...

  7. CentOS 6.6编译安装Nginx1.6.2+MySQL5.6.21+PHP5.6.3(转)

    vi /etc/sysconfig/iptables #编辑防火墙配置文件 # Firewall configuration written by system-config-firewall # M ...

  8. CentOS 7.2编译安装nginx1.10.3+MySQL5.5.38+PHP5.5.38

    1.关闭firewallad 关闭防火墙 systemctl stop firewalld.service 禁止firewall开机启动 systemctl disable firewalld.ser ...

  9. CentOS 7.2.1511编译安装Nginx1.10.1+MySQL5.6.33+PHP5.6.26

    准备篇 一.防火墙配置 CentOS 7.x默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop firewalld.se ...

随机推荐

  1. CSS3新特性(阴影、动画、渐变、变形、伪元素等) CSS3与页面布局学习总结——CSS3新特性(阴影、动画、渐变、变形、伪元素等)

      目录 一.阴影 1.1.文字阴影 1.2.盒子阴影 二.背景 2.1.背景图像尺寸 2.2.背景图像显示的原点 三.伪元素 3.1.before 3.2.after 3.3.清除浮动 四.圆角与边 ...

  2. LayoutInflater 原理分析 示例

    LayoutInflater简介        LayoutInflater 顾名思义就是布局填充器,做过Android界面编程,相信对这个类都比较熟悉,可能有人说,我们在activity中使用set ...

  3. 关于获得本机Mac Address的方法

    网络上有讲获得Mac address的方法有如下: 1. 发送ARP命令,利用返回的Mac Address缓冲区得到 2. 用NetworkInterface.GetAllNetworkInterfa ...

  4. C#多线程实践——创建和开始使用

    线程用Thread类来创建, 通过ThreadStart委托来指明方法从哪里开始运行.ThreadStart的声明如下: public delegate void ThreadStart(); 调用S ...

  5. uva 498 - Polly the Polynomial

    UVa 498: Polly the Polynomial | MathBlog #include <cstdio> #include <cstdlib> using name ...

  6. mysql在linux的安装

  7. 需要熟悉的几个调试命令:objdump/pmap/ldd/stace

    最近要编译很多库,还涉及到若干进程操作,所以就把相关的命令记录下来. 一,objdump命令 该命令适用于ELF可执行文件,常用的命令如下: objdump -h xx.o : 输出ELF文件的各个段 ...

  8. Maven, IntellJ Idea 配置注意点

    1. Maven要自己安装一个: 2. Maven设置中,settings.xml和repository地址都配置成自己: 3. Enable Auto import 4. 找不到jar文件时,自己的 ...

  9. logstash tomcat catalina.out 告警

    <pre name="code" class="html">[elk@dr-mysql01 tomcat]$ cat logstash_tomcat ...

  10. iptables 必须先拒绝所有,在允许

    <pre name="code" class="html">[root@wx02 ~]# cat /etc/sysconfig/iptables # ...