• linux源码安装apache


    apache安装之前,需要安装APR、APR-Util和PCRE依赖包

    1. 下载 Apache       下载地址: http://httpd.apache.org/download.cgi   (打开找最新版)        
    2. 下载 Apr                  下载地址 :http://archive.apache.org/dist/apr/apr-1.6.3.tar.gz  (可以直接下载或者找最新版)
    3. 下载 Apr-Util            下载地址:http://archive.apache.org/dist/apr/apr-util-1.6.1.tar.gz  (可以直接下载或者找最新版)
    4. 下载 PCRE         下载地址:http://sourceforge.net/projects/pcre/files/pcre   (打开找最新版)

           注意事项:wget  vim   gcc gcc-c++   cmake  这几个也是安装 Apache 所需要的小环境,重新安装或者更新下

           yum install -y  wget  vim   gcc gcc-c++   cmake

      第一步:apr的安装:

        tar -zxvf  apr-1.6.3.tar.gz      

        cd apr-1.6.3

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

        make && make install 

      第二步:apr-util的安装:

        tar -zxvf  apr-util-1.6.1.tar.gz

        cd apr-util-1.6.1

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

        make && make install 

        注意:编译安装apr-util时报错(fatal error: expat.h: No such file or directory)可以试着去安装expat-devel,因为apr-util需要expat-devel依赖,直接yum install -y expat-devel,再次编译安装

      第三步:pcre的安装:

        tar -zxvf  pcre-8.39.tar.gz

        cd pcre-8.3.9

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

        make && make install 

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

        或者可以使用yum安装,在安装apache之前安装好,yum install -y pcre pcre-devel

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

      第四步:安装 Apache

        tar -zxvf  httpd-2.4.37.tar.gz

        cd httpd-2.4.37

        ./configure --prefix=/usr/local/apache24/ --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/  --enable-so  --enable-mods-shared=most

        make && make install 

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

          –enable-so 表示启用DSO,表示支持扩展模块,动态扩展模块,apache和php都支持以一个模块的形式存在
          –enable-mods-shared=most 表示指定需要哪些动态扩展的模块,需要加载哪些呢?most就是绝大多数

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

        安装完之后,我们可以查看httpd的目录结构及modules目录下面的模块文件:

        ll /usr/local/apache24

          

        bin 命令放置的目录
        conf 主要存放了配置文件httpd.conf,这个是最重要的配置文件,Apache的所有主要权限和功能都在这个文件中进行了详细的设置htdocs
        logs 日志相关的目录
        modules 模块放置的目录

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

        查看apache加载了哪些模块,使用命令(两条命令一样):
        /usr/local/apache2.4/bin/httpd -M
        /usr/local/apache2.4/bin/apachectl -M

        前面以AH0058开头的行,并不是错误,仅仅是一个警告
        带有 shared 字样的,表示该模块为动态共享模块;带有 static 字样的,它表示以静态形式存在。两者区别在于,静态模块直接和主程序(/usr/local/apache24/bin/httpd)绑定在一起,动态模块则是一个个独立存在的文件

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

      执行:/usr/local/apache24/bin/apachectl start 

      提示一句    AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.68.194. Set the 'ServerName' directive globally to suppress this message

      这是因为/usr/local/apache24/conf/httpd.conf 中的ServerName被注释了,放开就好了。

      启动之后检查:curl localhost  能看到 It works!  就完成了。

      为了以后方便,可以把它添加到服务中去,将apachectl 拷贝到 /etc/init.d/httpd, 这样执行  service httpd start    就可以直接启动服务了

  • 相关阅读:
    python得到今天前的七天每天日期
    python 实现元组中的的数据按照list排序, python查询mysql得到的数据是元组格式,按照list格式对他们排序
    NoReverseMatch at /salesman/zhuce/ Reverse for '/zhuce/' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []
    为什么springMVC和Mybatis逐渐流行起来了?
    图像的七个不变矩 可用于图像的匹配
    【可视化必备】大数据时代的可视化工具
    常用机器视觉工具----图像分析工具(blob分析)
    【转】七种常见阈值分割代码(Otsu、最大熵、迭代法、自适应阀值、手动、迭代法、基本全局阈值法)
    C#编写滤镜 图片色调取反效果(Invert)
    Bitmap四种属性
  • 原文地址:https://www.cnblogs.com/xuekun/p/9915555.html
Copyright © 2020-2023  润新知