1、检查服务器中是否自带httpd,如果/etc/httpd/httpd.conf,说明系统自带httpd服务,需要卸载或关闭服务,不要让他影响到本次安装的服务启动

可以用 service httpd status 查看服务状态

2、停止服务: service httpd stop

3、卸载httpd:

  查看httpd进程pid :  ps -ef | grep httpd

  结束进程:      kill pid号(所有的都要结束)

  查找httpd安装包:  rpm -qa |grep httpd

  卸载安装包:     rpm -e httpd软件包

  卸载安装包时先卸载httpd,然后卸载httpd-tools,卸载httpd 时,可能会出现错误:

  Failed dependencies:
  httpd >= 2.2.0 is needed by (installed) gnome-user-share-2.28.2-3.el6.x86_64

  那就先卸载gnome-user-share-2.28.2-3.el6.x86_64,出现的的是哪个就卸载那个好了,如果是不能卸载的软件,就先停掉

4、下载并安装httpd

  注意:安装Apache:在安装apache之前必须先安装apr、apr-util和pcre,否则会报错

  4.1、安装apr:

  tar zxvf apr-1.5.2.tar.gz

  进入apr-1.5.2目录,然后执行:

  ./configure --prefix=/usr/local/apr

  可能会报这个错误:rm: cannot remove `libtoolT': No such file or directory

  网上有解决方案,但是根据原因来看,似乎不解决也没问题,所以抱着试试的心态,没有管这个错误,安装完成后,果然没有影响

  make && make install

  如果报 no acceptable C compiler found in $PATH,那是因为没有gcc编译器环境

  执行yum -y install gcc+ gcc-c++即可

  4.2、安装apr-util:

 tar zxvf apr-util-1.5.4.tar.gz
 进入解压后的目录

  ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config

  make && make install

  4.3、安装pcre

 tar -zxvf pcre-8.39.tar.gz

  进入解压后的目录

  ./configure --prefix=/usr/local/pcre

  make && make install

  4.4 安装Apache

   tar zxvf httpd-2.4.23.tar.gz

  进入解压后的目录

  ./configure --prefix=/usr/local/apache --enable-so --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre

  make && make install

5、安装PHP

  5.1、先安装依赖包libxml2

  tar zxvf libxml2-2.8.0.tar.gz,进入解压后的目录

  ./configure --prefix=/usr/local/libxml2

  make && make install

  5.2 安装PHP

  tar zxvf php-5.6.25.tar.gz

   ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-libxml-dir=/usr/local/libxml2 --with-apxs2=/usr/local/apache/bin/apxs --enable-inline-optimization --enable-shared --enable-opcache --enable-fpm  --enable-bcmath --enable-soap --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --enable-zip --with-mysql=/usr/local/mysql(如果已安装了MySQL就需要)

  可能会报错:zip support requires ZLIB解决办法   
  yum install zlib-devel

  make && make install

  如果出现:

  configure: error: Cannot find libmysqlclient_r under/usr/local/mysql. Note that the MySQL client library is not bundledanymore!

  # cd /usr/local/mysql/lib
  # ln -s libmysqlclient.so.23.5.5 libmysqlclient_r.so

  然后重新configure

  安装成功之后

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

  php.ini所在的目录就是编译时设置的目录:--with-config-file-path=/usr/local/php/etc

6、修改Apache配置

  vim /usr/local/apache/conf/httpd.conf

  找到ServerName,将前面的#去掉,并将后面的改成localhost:80

  LoadModule处添加LoadModule php5_module module/libphp5.so(一般都会有,如果没有就加上)

  在AddType application处添加AddType application/x-httpd-php .php

  找到 DirectoryIndex,在后面添加index.php,原先的index.html可删可不删

  退出保存,esc->:->wq

  重启Apache,/usr/local/apache/bin/apachectl restart

  

  

  

  

  

centos 服务器编译安装apache+php的更多相关文章

  1. CentOS 下编译安装Apache

    CentOS 下编译安装Apache 卸载原有的apache 首先从 http://httpd.apache.or 下载apache源码包httpd-2.4.4.tar.gz然后从 http://ap ...

  2. centos手动编译安装apache、php、mysql

    64位centos 5.5手动安装lamp,要求curl.json.pdo_mysql.gd,记录如下. centos 5.4.5.5.5.6的内核都是2.6.18,都可以安装php 5.3. 卸载旧 ...

  3. CentOS下编译安装Apache

    与Apache 2.2.x相比,Apache 2.4.x提供了很多性能方面的提升,包括支持更大流量.更好地支持云计算.利用更少的内存处理更多的并发等.除此之外,还包括性能提升.内存利用.异步 I/O的 ...

  4. CentOS下编译安装Apache(httpd)

    官网下载最新版本的apache, apr, apr-util http://httpd.apache.org/download.cgi#apache24 http://apr.apache.org/d ...

  5. centos 7编译安装apache

    1.安装工具和依赖包 yum install unzipyum -y install gcc gcc-c++ 2.创建软件安装目录mkdir /usr/local/{apr,apr-util,apr- ...

  6. Linux(CentOS)下编译安装apache

    Centos7.6系统 已经安装lnmp一键环境 想装个apache跑php7 (php7的安装以及与apache的交互在这里: https://www.cnblogs.com/lz0925/p/11 ...

  7. linux中编译安装Apache、PHP、MySQL(上)

    1.简介 在阿里云买了个云服务器,一直没时间折腾.过了近十天了吧,才有时间好好玩玩这个云服务器.自己是做Web开发的,所以我需要的开发环境是LAMP.之前打算是采用yum安装,不过yum安装apach ...

  8. CentOS 6, 编译安装lamp (php-fpm)

    1 整体要求 php-fpm.httpd.mysql三者分别安装在三台虚拟机上: 第一台虚拟主机用于安装Mariadb,第二台虚拟主机安装php-fpm:第三台虚拟主机安装httpd.三台主机安装完之 ...

  9. 在CentOS 6上安装Apache和PHP

    本文演示如何在CentOS 6上安装Apache和PHP.CentOS 6自带的是Apache 2.2.3和PHP 5.1.6,您可以使用默认的CentOS包管理器进行安装yum.使用yum(而不是使 ...

随机推荐

  1. CSS 是怎样确定图像大小的?

    本文转自奇舞周刊学习使用侵权删 先来看个例子,热热身. 上面这张图像的原始尺寸是:宽 54px 高 49px. 那么,在以下代码中,每张图像显示的最终尺寸是多少? https://p1.ssl.qhi ...

  2. 【LeetCode 23】合并K个排序链表

    题目链接 [题解] 会归并排序吧? 就把这K个链表当成是K个数字就好. 然后做归并排序. 因为归并排序的时候本来就会有这么一个过程. [l..mid]和[mid+1..r]这两段区间都是有序的了已经. ...

  3. 【Dart学习】-- Dart之泛型

    一,概述  Dart是一种可选的类型语言.Dart中的集合默认是异构的.换句话说,单个Dart集合可以托管各种类型的值.但是,可以使Dart集合保持同质值.泛型的概念可以用来实现同样的目的. 泛型的使 ...

  4. fiddler抓包工具详解

    转自:http://www.cnblogs.com/yyhh/p/5140852.html Fiddler 抓包工具总结   阅读目录 1. Fiddler 抓包简介 1). 字段说明 2). Sta ...

  5. img标签+map的使用

    img标签+map的使用 img标签含有一个usemap属性,用法相当于锚点的使用,usemap="#useName".然后就是map标签,具体代码: <body> & ...

  6. Spellchecker inspection helps locate typos and misspelling in your code, comments and literals, and fix them in one click

    Pycharm设置 Pycharm总是很多的拼写检查波拉线 Spellchecker inspection helps locate typos and misspelling in your cod ...

  7. python之lambda,random,timeit,collections,

    python之lambda,random,timeit,collections,一. python之lambda函数lambda函数又称为匿名函数,匿名函数就是没有函数名的函数.>>> ...

  8. TLS/SSL 协议 - Server Certificate

    Server Certificate 典型的Certificate消息用于携带服务器X.509证书链.证书链是以ASN.1 DER编码的一系列证书,一个接着一个组合而成.主证书必须第一个发送,中间证书 ...

  9. html01. <!DOCTYPE html>

    解释 在HTML文档初,往往会有这么一句话<!DOCTYPE html>,它是html5标准网页声明,全称为Document Type HyperText Mark-up Language ...

  10. 从pcap文件中分析出数据包

    import dpkt import struct import sys,os f=file(sys.argv[1],"rb") pcap=dpkt.pcap.Reader(f) ...