zoukankan      html  css  js  c++  java
  • linux 安装apache

    685人阅读 评论(0) 收藏 举报

    Linux系统下安装 apache2.4.1的过程

     本以为linux下安装apache是件很简单的过程。三命令就可以搞定,jxvf解压,make 编译,make install 安装就OK了。没想到这个过程还颇费周折。可能和环境有关吧。先说一下我的环境。

    ---------------------------

    linux :    cenos5.5  (验证4.8也会碰到以下问题)

    apache:  httpd-2.4.1.tar.bz2

    -------[root@localhost apache]--------------------

    [root@localhost apache] #cd apache

    [root@localhost apache]# tar jxvf httpd-2.4.1.tar.bz2      //解压apache的压缩包
    [root@localhost apache]# cd httpd-2.4.1       //定位到httpd-2.4.1 文件夹下
    [root@localhost httpd-2.4.1]# ls       //查看显示httpd-2.4.1 文件夹下内容
    [root@localhost httpd-2.4.1]#./configure --help | more      //查看安装apache配置参数
    [root@localhost httpd-2.4.1]#./configure  --prefix=/usr/local /apache  --enable-so      //  配置apache路径 ,后面跟 --enable-so 参数表示让apache核心装 载DSO

    [root@localhost httpd-2.4.1]# make   //编译apache 

    出错了!提示:

    configure: error: APR not found. Please read the documentation 

    在apache官网上可以下载到 apr-1.4.6.tar.gz 

    解决apr not found问题>>>> 

    APR和APR-UTIL的下载地址:http://apr.apache.org/download.cgi

       [root@localhost apache]# tar -zxf apr-1.4.6.tar.gz

       [root@localhost apache]# cd apr-1.4.6

       [root@localhost apr-1.4.6]# ./configure --prefix=/usr/local/apr

       [root@localhost apr-1.4.6]# make

       [root@localhost apr-1.4.6]# make install

     

    安装完成后,再来编译apache 

      [root@localhost httpd-2.4.1]# make

    又出错了!提示:

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

    好吧!还是上面的apache官网地址再下载 apr-util-1.4.1.tar.gz 

    解决APR-util not found问题>>>>

       [root@localhost apache]# tar -zxf  apr-util-1.4.1.tar.gz

    [root@localhost apache]#  cd  apr-util-1.4.1

       [root@localhost apr-util-1.4.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config

      [root@localhost apr-util-1.4.1]# make
      [root@localhost apr-util-1.4.1]# make install

     

    再来编译apache ,再次出错!提示:

    configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/ , 我X !linux 安装软件之间关联性有时能让人崩溃。

    ../configure仍提示APR-util not found,增加--with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util后出现>>>>>

    [root@localhost apache]# ./configure –help | grep pcre

    --with-pcre=PATH        Use external PCRE library
    下载地址:http://ftp.exim.llorien.org/pcre/

    下载pcre-8.30.zip ,列表文件较多,一般浏览器会有搜索功能,你可ctrl+f 搜索定位后下载。

    [root@localhost apache]#unzip -o pcre-8.30.zip

    [root@localhost apache]#cd pcre-8.30

    [root@localhost pcre-8.30]#./configure --prefix=/usr/local/pcre

    [root@localhost pcre-8.30]#make

    [root@localhost pcre-8.30]#make install



    apr-1.4.6 拷贝到httpd-2.4.3/srclib/apr文件夹

    将apr-util-1.4.1 拷贝到httpd-2.4.3/srclib/apr-util文件夹              (好多参考文档都少了这一步)

    [root@localhost apache] #cd apache

    [root@lamp opt]# cp -rf  apr-1.4.6  httpd-2.4.3/srclib/apr

     [root@lamp opt]# cp -rf apr-util-1.4.1   httpd-2.4.3/srclib/apr-util 这两句话是为了防止,安装时报如下错误  Configur:error:Bundled APR requested but not found at ./srclib/. Download …

    和可能出现 的错误httpd: Syntax error on line 140 of /usr/local/apache2/conf/httpd.conf: Cannot load modules/mod_dir.so into server: /usr/local/apache2/modules/mod_dir.so: undefined symbol: 


    apr_array_clear



    编译Apache

    [root@localhost opt]# cd httpd-2.4.1 

    [root@localhost httpd-2.4.1]# ./configure --prefix=/usr/local/apache  --enable-so –enable-mods-shared=most --with-mpm=worker --with-apr=/usr/local/apr/   --with-apr-util=/usr/local/apr-util   --with-pcre=/usr/local/pcre    --with-included-apr

      注意,这里后面跟的参数,一定要与前面安装apr 和apr-util的路径一致。

     [root@localhost httpd-2.4.1]# make
     [root@localhost httpd-2.4.1]# make install

     这次编译安装应该不会再报任何错误了。哈哈!!

     

    启动apache

    [root@localhost bin]# pwd

    /usr/local/apache/bin

    [root@localhost bin]# apachectl stop  停止

    [root@localhost bin]# apachectl start  启动

     

    查看80端口是否被占用

    [root@localhost conf]#netstat -an | grep :80    

     

    查看apache 启动服务是否启动

    [root@localhost bin]# ps -aux | grep httpd

    Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ

    root      2866  0.0  1.2  25164  9556 ?        Ss   22:45   0:00 /usr/sbin/httpd -k start

    apache    2867  0.0  0.7  25300  5556 ?        S    22:45   0:00 /usr/sbin/httpd -k start

    apache    2868  0.0  0.6  25300  5444 ?        S    22:45   0:00 /usr/sbin/httpd -k start

    apache    2869  0.0  0.6  25300  5444 ?        S    22:45   0:00 /usr/sbin/httpd -k start

    apache    2870  0.0  0.7  25300  5556 ?        S    22:45   0:00 /usr/sbin/httpd -k start

    apache    2871  0.0  0.6  25164  4796 ?        S    22:45   0:00 /usr/sbin/httpd -k start

    apache    2872  0.0  0.6  25164  4796 ?        S    22:45   0:00 /usr/sbin/httpd -k start

    apache    2873  0.0  0.6  25164  4796 ?        S    22:45   0:00 /usr/sbin/httpd -k start

    apache    2874  0.0  0.6  25164  4796 ?        S    22:45   0:00 /usr/sbin/httpd -k start

    root      3141  0.0  0.0   4244   676 pts/1    R+   22:48   0:00 grep httpd

     

     

    下面访问一下apache默认页是否能打开。http://ip:80/index.html

    又提示了错误:

    难道是端口被占用了?修改apache的配置文件

    /usr/local/apache/conf/httpd.conf  配置文件

    [root@localhost conf] vi httpd.conf

    找到下面一行:

    Listen 80   把80改成其它端口,如8080 、8800 只要没被占用就行。

    找到下面一行:

    ServerName http://www.example.com/   改成本机ip加端口号,如:192.168.0.105:80

     

      端口改来改去,一直都 报那个错误。由于之前没有在linux下安装apache的经验,与是想找一下apache默认运行的哪个页面。于是,找到了,..../apache /htdocs/index.html 文件(受tomcat的误导)!其实不然,真正运行的是 /var/www/html 目录下的文件

    You don't have permission to access /index.html on this server 

    真正的错误在这句提示上。因为我方位的文件权限不足够。那给文件加个权限吧!

    在/var/www/html 创建个文件index.html

    [root@localhost html]# chmod 766 index.html

    Ok!再来方位apache ,页面正常打开了!过程很纠结,结局很美好!

     

    -----------小结--------------

    需要安装的文件:

    apr-1.4.6

    apr-util-1.4.1.tar.bz2

    pcre-8.30.zip

    /usr/local/apache     apache的安装目录

    /usr/local/apache/conf/httpd.conf    配置文件

    /usr/local/apache/bin/ apachectl   stop/start    停止/启动程序

    /var/www/html/    在这个文件夹下创建可以访问的页面



    安装apache 提示APR not found 解决方法

     推荐方法,注意版本号。

    1.下载apr安装包:

    http://labs.mop.com/apache-mirror//apr/apr-1.4.6.tar.gz

    tar zxvf  apr-1.4.6.tar.gz

    cd apr-1.4.6

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

    make && make install

    2.下载apr-util安装包:

    http://labs.mop.com/apache-mirror//apr/apr-util-1.4.1.tar.gz

    tar zxvf apr-util-1.4.1.tar.gz

    cd apr-util-1.4.1

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

    3.下载pcre安装包:

    http://cdnetworks-kr-2.dl.sourceforge.net/project/pcre/pcre/8.30/pcre-8.30.zip

    unzip pcre-8.30.zip

    cd pcre-8.30

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

     make && make install

    4.安装httpd包:

    http://labs.mop.com/apache-mirror/httpd/httpd-2.4.2.tar.gz

    tar zxvf httpd-2.4.2.tar.gz


    cd ..

    cp -rf apr-1.4.6  httpd-2.4.2/srclib/apr 

    cp -rf apr-util-1.5.1  httpd-2.4.2/srclib/apr-util 

    这两句话是为了防止,安装时报如下错误  Configur:error:Bundled APR requested but not found at ./srclib/. Download …

    和错误httpd: Syntax error on line 140 of /usr/local/apache2/conf/httpd.conf: Cannot load modules/mod_dir.so into server: /usr/local/apache2/modules/mod_dir.so: undefined symbol: apr_array_clear



    cd httpd-2.4.2

    [root@localhost opt]# cd httpd-2.4.2

     [root@localhost httpd-2.4.2]# ./configure --prefix=/usr/local/apache  --enable-so –enable-mods-shared=most --with-mpm=worker --with-apr=/usr/local/apr/   --with-apr-util=/usr/local/apr-util   --with-pcre=/usr/local/pcre    --with-included-apr

    make && make install

    安装完成。

  • 相关阅读:
    Primary key and Unique index
    Hash unique和Sort unique
    Oracle索引扫描算法
    Oracle预估的基数算法
    PGA突破pga_aggregate_target限制
    aix ipcs使用说明
    开窗函数和聚合函数区别
    【39.66%】【codeforces 740C】Alyona and mex
    【81.82%】【codeforces 740B】Alyona and flowers
    Android SDK离线安装
  • 原文地址:https://www.cnblogs.com/roland1982/p/3511837.html
Copyright © 2011-2022 走看看