文档原位置

一、编译安装apache

  1、解决依赖关系

  httpd-2.4.4需要较新版本的apr和apr-util,因此需要事先对其进行升级。

  升级方式有两种,一种是通过源代码编译安装,一种是直接升级rpm包(谨慎!小心)。下面是使用源代码的方式行,它们的下载路径为:(~_~)这里不再说到那里下载了,相信你有能力找的到的,呵呵

  2、安装依赖的软件包(当然这里可以认为成需要的编译环境咯!)

  yum -y install pcre-devel

  yum -y install  "Development Libraries"(这个东西可能系统已经有了,不过要小心一点,最好试一下看看是否安装了)

  3、一切准备好了那就开始安装吧!!

  

() 编译安装apr

 tar xf apr-1.4..tar.bz2
cd apr-1.4.
./configure --prefix=/usr/local/apr
make && make install
() 编译安装apr-util

 tar xf apr-util-1.5..tar.bz2
cd apr-util-1.5.
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install
(3)编译安装httpd-2.4.

tar xf httpd-2.4..tar.bz2
cd httpd-2.4.
./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mods-shared=most --enable-mpms-shared=most --with-mpm=event
make && make install

二、测试

  1、启动apache时注意问题:

  启动前需要注意,应该先进行SELinux关闭,如果没有关闭的话apache可能不能正常的工作,好有一点就是关于iptables(防火墙)的问题,建议测试阶段先进行关闭。

  2、启动apache服务:

  # setenforce 0

  # service iptables stop

  # /usr/local/apache/bin/apachectl start

  打开浏览器输入本机ip看是否有页面刷新出来,并显示

  It works!

  那么apache服务可以简单的工作了!

  要想有更多的功能那只能修改httpd.conf这个配置文件啦!!(这里就先不介绍了)

三、一些关于apache文件目录的问题

  1、用RPM安装后的Apache配置文件具体位置:

    /etc/httpd/ -------------------------- Apache服务程序根目录

    /etc/httpd/conf/httpd.conf --------- 主配置文件

    /var/www/html --------------------- 网页文档默认根目录

    /var/log/httpd/error_log ---------- 错误日志文件

    /var/log/httpd/access_log -------- 访问日志文件

  2、源码安装的目录文件(因为编译是文件目录不定所以就简单的写一下了):

    主配置文件---------------------- 编译时自己指定的目录--prefix=配置文件的路径

    默认网页目录 ------------------- 安装apache目录下的htdocs目录

    日志文件位置 ------------------- 安装apache目录下的logs目录

    apache服务程序的目录----------安装apache目录下的bin目录

四、常见错误

  #1#

  /usr/local/apache/bin/httpd: symbol lookup error: /usr/local/apache/bin/httpd:   undefined symbol: apr_pool_pre_cleanup_register

原因:未找到正确的apr,apr-util路径
解决:要重新安装apr,apr-util,并且写出正确文件路径。
  --with-apr=/usr/local/bin/apr-1-config \
  --with-apr-util=/usr/local/apr/bin/apu-1-config   

  #2#

  httpd: apr_sockaddr_info_get() failed for redhat
  httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

原因:httpd.conf配置文件中ServerName 与主机不一致导致

解决:修改配置httpd.conf文件中#ServerName 即可

  #3# 

  httpd: Syntax error on line 142 of /usr/local/apache/conf/httpd.conf: Cannot load modules/mod_dir.so into server: /usr/local/apache/modules/mod_dir.so: undefined symbol: apr_array_clear

原因:不能加载mod_dir.so模块(具体不详)

解决:方式如下

    tar -zxvf apr-1.4.6.tar.gz
    tar -zxvf apr-util-1.5.2.tar.gz
    mv ./apr-1.4.6 /usr/local/src/apache/srclib/apr   
    mv ./apr-util-1.5.2 /usr/local/src/srclib/apr-util 
    ./configure 时,后面添加
        --with-included-apr \
        --with-pcre=/usr/local/bin/pcre-config(自己安装的pcre路径)
  #4#
   MPM most does not support dynamic loading.

  解决:--enable-mpms-shared=all

  #5#

  rm: cannot remove `libtoolT': No such file or directory

  解决:

    Vim configure

    把 $RM “$cfgfile” 那行注释掉  

  由于不是一下写好,且前面的内容没有具体的修改,因此带来的不便望谅解!!!  

Linux 源码安装apache 与常见错误解决的更多相关文章

  1. linux源码安装apache

    apache安装之前,需要安装APR.APR-Util和PCRE依赖包 下载 Apache     下载地址: http://httpd.apache.org/download.cgi   (打开找最 ...

  2. linux下源码安装apache服务

    1.搭建静态网站是,我们只需要搭建apache服务即可满足要求. 例如:如果我再客户端游览器输入地址,他会找到192.168.1.100这个服务器,然后根据端口会找到apache服务器.apache他 ...

  3. 烂泥:源码安装apache

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 最近要开始学习nagios监控方面的知识了,但是nagios与apache结合的比较紧密,所以本篇文章就先把apache的源码安装学习下. 我们现在分以 ...

  4. centos7源码安装Apache及Tomcat

    源码安装Apache (1) 一.通过 https://apr.apache.org/  下载 APR 和 APR-util 通过 http://httpd.apache.org/download.c ...

  5. 源码安装apache

    目标:源码安装apache 依赖包:apr.apr-util和pcre.其中pcre正则库要先安装,apr和apr-util(已解压)可以复制到apache下的资源库srclib下. 安装pcre: ...

  6. Linux源码安装JDK1.8

    Linux源码安装Java 1.到官网下载 jdk-8u131-linux-x64.tar.gz 官网地址:http://www.oracle.com/technetwork/java/javase/ ...

  7. mysql-5.5 for linux源码安装

    mysql-5.5 for linux源码安装 1.使用Yum安装依赖软件包 # yum install -y gcc gcc-c++ gcc-g77 autoconf automake bison  ...

  8. Centos7源码安装Apache和PHP

    源码安装Apache 安装需要的依赖 yum -y install gcc autoconf automake make pcre pcre-devel openssl openssl-devel​# ...

  9. 源码编译apache报错的解决方法

    源码编译apache报错的解决方法   问题介绍 在源码编译安装httpd时,./configure执行无错误,到make时就报错,在网络上搜索了很多文章,很多方法如换apr-util的低版本并不能很 ...

随机推荐

  1. ResolverService跨子网的广播问题

    ResolverService在广播请求时,需要借助McastTransport,而McastTransport利用java.net.MulticastSocket进行收发,java.net.Mult ...

  2. C++问题-Qt Visual Studio Add-in

    问题现象:用VS打开其他人的项目提示如下:Qt Visual Studio Add-in...中间全TMD的英文,我就省略...QT版本不对,需要修改QT版本. 问题原因:占时不明,因为我是开发Del ...

  3. Linux命令之env:显示当前用户的环境变量

    Linux系统里的env命令可以显示当前用户的环境变量,还可以用来在指定环境变量下执行其他命令.下面来比较一下set,env和export命令的异同:set命令显示当前shell的变量,包括当前用户的 ...

  4. LoadRunner显示中文乱码的问题

    lr_convert_string_encoding Converts a string to a different encoding. Return Values:This function re ...

  5. java中关于类的封装与继承,this、super关键字的使用

    原创作品,可以转载,但是请标注出处地址http://www.cnblogs.com/V1haoge/p/5454849.html. this关键字: this代表当前对象,它有以下几种用途: 1.本类 ...

  6. Oracle数据库文件恢复与备份思路

    怎样才能对Oracle数据库进行备份?如何才能对删除的数据再进行恢复?这是困扰着很多人的问题.大家都知道,任何数据库在长期使用过程中,都会存在一定的安全隐患.对于数据库管理员来说不能仅寄希望于计算机操 ...

  7. 理解Windows中的路由表和默认网关

    每一个Windows系统中都具有IP路由表,它存储了本地计算机可以到达的网络目的地址范围和如何到达的路由信息.路由表是TCP/IP通信的基础,本地计算机上的任何TCP/IP通信都受到路由表的控制. 理 ...

  8. 【转】Android真机抓屏- Android Screen Monitor

    http://www.cnblogs.com/xiaofeixiang/p/4086092.html 一般运行Android应用程序有两种方式一种是设置Android虚拟设备模拟器,通过Android ...

  9. synthesize(合成) keyword in IOS

    synthesize creates setter and getter (从Objective-C 2.0开始,合成可自动生成存取方法) the setter is used by IOS to s ...

  10. oracle批量导出AWR报告

    工作需求:项目中需要把生产库中所有的AWR报告dump出来,然后导入到方便测试的数据库中.在测试库中的AWR报告需要根据dbid和实例名逐个导出,如果遇到很多再加上RAC系统,会很麻烦.在网上找了一些 ...