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. Vue 指令大全

    准备开始本章要给大家带来的内容是相关Vue中的组件以及一系列常用属性.本章合适人群囊括了除已有开发经验人员以外的小白新手,从how.why.what三个角度来让大家理解并使用该技术历史介绍angula ...

  2. mybatis中配置文件头

    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "- ...

  3. asp.net MVC遇到的问题

    参考:http://blog.csdn.net/chenqiangdage/article/details/48996101 asp.netMVC 如何解决“上下文模型已在数据库创建后发生更改” 问题 ...

  4. Shiro学习(10)Session管理

    Shiro提供了完整的企业级会话管理功能,不依赖于底层容器(如web容器tomcat),不管JavaSE还是JavaEE环境都可以使用,提供了会话管理.会话事件监听.会话存储/持久化.容器无关的集群. ...

  5. 深入浅出 Vue.js 第九章 解析器---学习笔记

    本文结合 Vue 源码进行学习 学习时,根据 github 上 Vue 项目的 package.json 文件,可知版本为 2.6.10 解析器 一.解析器的作用 解析器的作用就是将模版解析成 AST ...

  6. Zookeeper集群介绍及其搭建

    1 Zookeeper集群简介 1为什么搭建Zookeeper集群 大部分分布式应用需要一个主控.协调器或者控制器来管理物理分布的子进程.目前,大多数都要开发私有的协调程序,缺乏一个通用机制,协调程序 ...

  7. 【系统安全性】四、认证Authentication

    四.认证Authentication 1.为什么要认证 对请求.数据进行认证,判断伪造的数据 HTTP请求很脆弱,抓包软件很强大,容易伪造身份,非法获取数据 2.摘要认证 对象:客户端参数.服务端响应 ...

  8. C语言新手写扫雷攻略2

    接下来是游戏的功能设计,要有扫雷的基本功能,左键点击雷区,右键红旗标记,并且可以统计雷数,可以重新开始,以下是游戏的功能初始 void Game(void) { while (1) { if (FLA ...

  9. xshell突出显示集

    xshell突出显示集(参考mobaxterm,直接拷贝过来不行,应该是xshell对正则表达式的支持不够好): Underline: \b(http(s)?://[A-Za-z0-9_./& ...

  10. Sql生成 Insert 语句

    declare @TableName sysname select @TableName = 'T_OOSOrder' declare @result varchar(max) = 'INSERT I ...