博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux 源码安装apache 与常见错误解决
阅读量:6985 次
发布时间:2019-06-27

本文共 3165 字,大约阅读时间需要 10 分钟。

一、编译安装apache

  1、解决依赖关系

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

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

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

  yum -y install pcre-devel

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

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

  

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

 

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

 

(3)编译安装httpd-2.4.4tar xf httpd-2.4.4.tar.bz2cd httpd-2.4.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=eventmake && 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” 那行注释掉  

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

转载于:https://www.cnblogs.com/zlxdbokeyuan/p/5022439.html

你可能感兴趣的文章
分享Silverlight/WPF/Windows Phone/HTML5一周学习导读(4月2日-4月8日)
查看>>
typescript 接口 interface
查看>>
064web
查看>>
卷积(转自wiki百科)
查看>>
source tree常用功能
查看>>
DDR线长匹配与时序
查看>>
[HDU]2098分拆素数和
查看>>
python之metaclass
查看>>
给网页去色
查看>>
页面瘦身之压缩viewState和保存viewState到服务器
查看>>
POJ 1655 Balancing Act[树的重心/树形dp]
查看>>
[题集]图论
查看>>
android view知识点 总结
查看>>
记一个鼠标略过时候的css动画
查看>>
HTTP协议
查看>>
slave->pxc后GTID不一致
查看>>
WPF 与Surface 2.0 SDK 亲密接触 - 图形缩放篇
查看>>
PhotoShop常用的功能汇总
查看>>
基于移动端Reactive Native轮播组件的应用与开发详解
查看>>
专家的修炼之路 —— 德雷福斯模型 Dreyfus
查看>>