热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux上安装Apache环境及安装过程报错解决方案(零初始环境)

Note:要从零开始搭建,就不要嫌中间遇到各种eggache的问题!一.下载apache源代码1.下载地址:http:httpd.apache.orgdownload.cgi?找稳

Note:要从零开始搭建,就不要嫌中间遇到各种eggache的问题!

一.下载apache源代码

1.下载地址:http://httpd.apache.org/download.cgi  找稳定的最新的版本(Stable Release)

   得到文件 httpd-2.4.3.tar.gz

2. 上传到你的服务器目录,如:/home/tnuser/installers

    解压:tar -zxvf httpd-2.4.3.tar.gz   (我们下载的是源代码,所以这一步只是把源代码解压) 

    移动解压后的目录到目标地址:mv /home/tnuser/installers/httpd-2.4.3  /home/tnuser/  (这一步只是把解压后的目录放在合适的位置方便管理,可以不做)

3. 接下来我们需要编译刚才解压的源文件,这是重点

     配置编译时的一些参数: 

[plain]  view plain copy print ?
  1. cd  /home/tnuser/installers/httpd-2.4.3  (切换到apache源代码目录下)  
  2.   
  3.  ./configure --prefix=/home/tnuser/apache/   (设置apache安装目录,这里的 /home/tnuser/apache/ 才是apache真正的安装目录)  

二. 到这里时,回车运行命令,报错:

如果你能正常执行,说明你以前安装过apache环境,请直接make & make install 并请跳过下面一段

checking for APR... no
configure: error: APR not found.  Please read the documentation.

解决方案:

Apache在安装时需要一些准备环境,这里需要安装另外一个东西 APR(Apache Portable Runtime)。

下载地址: http://archive.apache.org/dist/apr/ 同样找最新版本

得到文件:apr-1.4.6.tar.gz

解压:tar -zxvf apr-1.4.6.tar.gz

编译:

[plain]  view plain copy print ?
  1. cd /home/tnuser/installers/apr-1.4.6  
  2.   
  3.  ./configure --prefix=/home/tnuser/apr/  (一堆日志信息)  
  4.   
  5. make (一堆日志信息)  
  6.   
  7. make install (一堆日志信息)  

完成后在指定地址生成目录和文件

接着装apache,切换到源代码目录设置编译参数: ./configure --prefix=/home/tnuser/apache/ 

还是报上面的错,这是因为上面自定义了apr的安装目录,所以得把这个信息告诉apache。

正确的运行命令为:

[plain]  view plain copy print ?
  1. ./configure --prefix=/home/tnuser/apache/  --with-apr=/home/tnuser/apr/  

三. 执行后继续报错

不过这次错误信息变成了:(不要紧,这说明你的apr安装好了,只是又发现少了另外一个环境,慢慢来)

checking for APR-util... no
configure: error: APR-util not found.  Please read the documentation.

解决方案: 下载 APR-util

下载地址:http://archive.apache.org/dist/apr/ 找最新版本

得到文件:apr-util-1.5.1.tar.gz

解压: tar -zxvf apr-util-1.5.1.tar.gz

编译:

[plain]  view plain copy print ?
  1. cd /home/tnuser/installers/apr-util-1.5.1  
  2.   
  3.  ./configure --prefix=/home/tnuser/apr-util/   

这次运行会报错:

checking for APR... no
configure: error: APR could not be located. Please use the --with-apr option.

看到提示你就懂了,不多说:

[plain]  view plain copy print ?
  1. ./configure --prefix=/home/tnuser/apr-util/ --with-apr=/home/tnuser/apr/  
  2.   
  3.  make  
  4.   
  5.  make install   

在你指定的安装地址生成目录就说明安装成功了


四. 再转回去继续安装apache

有了上回的经验,这次就知道运行什么命令了。切到apache源代码目录下运行:

[plain]  view plain copy print ?
  1. ./configure --prefix=/home/tnuser/apache/  --with-apr=/home/tnuser/apr/  --with-apr-util=/home/tnuser/apr-util/  
照旧报错:

checking for pcre-config... false
configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/

解决方案:发现还是少环境,不多说,下载 PCRE

下载地址: http://jaist.dl.sourceforge.net/project/pcre/pcre/ 找最新版下

得到文件: pcre-8.32.tar.gz

解压:tar -zxvf pcre-8.32.tar.gz

编译:

[plain]  view plain copy print ?
  1. cd /home/tnuser/hunter/installers/pcre-8.32  
  2.   
  3. ./configure --prefix=/home/tnuser/pcre/  

这次错误信息如下:

checking for windows.h... no
configure: error: You need a C++ compiler for C++ support.

原来pcre需要用C++编译(我只想说:Why I need C++ while I‘m a java programmer? Eggache! Holy Shit!)

解决方案:

首先,区分你的系统是Debian还是Fedora。

我的系统是Fedora,所以配置步骤如下:(Debian系统使用命令apt-get,对应工具包为build-essential,命令使用方法:apt-get install build-essential)

sudo yum groupinstall "Development Tools"

这里会花费很长时间安装东西,中间会让你选择是否安装,输入 就行了。

下载过程完成后会自动安装,最终见到  Complete! 就结束了。

返回来还得继续安装PCRE啊,Go:

[plain]  view plain copy print ?
  1. ./configure --prefix=/home/tnuser/pcre/  
  2.   
  3. make  
  4.   
  5. make install  

安装成功,以最终在目标位置生成相应目录为准。


至此,令人eggache的apache准备环境就算搞定了。

五. 继续apache的安装,一定要在参数中带上以上3种环境配置:


[plain]  view plain copy print ?
  1. ./configure --prefix=/home/tnuser/apache/  --with-apr=/home/tnuser/apr/  --with-apr-util=/home/tnuser/apr-util/  --with-pcre=/home/tnuser/pcre/  

大块的log,终于没报错(唯有泪千行啊。。。泪千行。。。)

make

make install

六. 最后测试apache:

cd /home/tnuser/apache/bin

apachectl -k start

如果不能启动,查下端口冲突之类的问题(一般会与系统自带的httpd服务端口冲突)。

启动好后,访问你的apache,看到经典

It works! 关闭时用:apachectl -k stop


七.附录:

http://apache.jz123.cn/install.html   中文版官方编译与安装教程



码完收功!!!


原文地址:http://blog.csdn.net/bob007abc/article/details/8281630

Linux上安装Apache环境及安装过程报错解决方案(零初始环境)


推荐阅读
  • 如何在PHP中安装Xdebug扩展
    本文介绍了如何从PECL下载并编译安装Xdebug扩展,以及如何配置PHP和PHPStorm以启用调试功能。 ... [详细]
  • 探讨如何在映射文件中处理重复的属性字段,以避免数据操作时出现错误。 ... [详细]
  • 网络流24题——试题库问题
    题目描述:假设一个试题库中有n道试题。每道试题都标明了所属类别。同一道题可能有多个类别属性。现要从题库中抽取m道题组成试卷。并要求试卷包含指定类型的试题。试设计一个满足要求的组卷算 ... [详细]
  • 在1995年,Simon Plouffe 发现了一种特殊的求和方法来表示某些常数。两年后,Bailey 和 Borwein 在他们的论文中发表了这一发现,这种方法被命名为 Bailey-Borwein-Plouffe (BBP) 公式。该问题要求计算圆周率 π 的第 n 个十六进制数字。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 数据类型--char一、char1.1char占用2个字节char取值范围:【0~65535】char采用unicode编码方式char类型的字面量用单引号括起来char可以存储一 ... [详细]
  • 本文将从基础概念入手,详细探讨SpringMVC框架中DispatcherServlet如何通过HandlerMapping进行请求分发,以及其背后的源码实现细节。 ... [详细]
  • 回顾两年前春节期间的一个个人项目,该项目原本计划参加竞赛,但最终作为练习项目完成。独自完成了从编码到UI设计的全部工作,尽管代码量不大,但仍有一定的参考价值。本文将详细介绍该项目的背景、功能及技术实现。 ... [详细]
  • 本文探讨了在一个物理隔离的环境中构建数据交换平台所面临的挑战,包括但不限于数据加密、传输监控及确保文件交换的安全性和可靠性。同时,作者结合自身项目经验,分享了项目规划、实施过程中的关键决策及其背后的思考。 ... [详细]
  • importjava.io.*;importjava.util.*;publicclass五子棋游戏{staticintm1;staticintn1;staticfinalintS ... [详细]
  • 心理学经典:《思考致富》
    《思考致富》是由美国著名成功学大师拿破仑·希尔撰写的一部重要著作,该书基于希尔长达20年的深入研究和访谈,探讨了个人成功的核心要素。书中不仅揭示了成功的关键,还提供了一系列实用的方法和策略。 ... [详细]
  • empty,isset首先都会检查变量是否存在,然后对变量值进行检测。而is_null只是直接检查变量值,是否为null,因此如果变量未定义就会出现错误!检测一个变量是否是null ... [详细]
  • 解决Visual Studio Code中PHP Intelephense误报问题
    PHP作为一种高度灵活的编程语言,其代码结构可能导致Intelephense插件在某些情况下报告不必要的错误或警告。自1.3.3版本起,Intelephense引入了多个配置选项,允许用户根据具体的工作环境和编程风格调整这些诊断信息的显示。 ... [详细]
  • 本文将详细介绍如何在二进制和十六进制之间进行准确的转换,并提供实际的代码示例来帮助理解这一过程。 ... [详细]
  • 在处理大数据量的SQL分页查询时,通常需要执行两次查询来分别获取数据和总记录数。本文介绍了一种优化方法,通过单次查询同时返回分页数据和总记录数,从而提高查询效率。 ... [详细]
author-avatar
Hide-my-love
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有