• ubuntu 编译安装 apache2.4.46


    配置步骤

    1、下载编译工具 gcc/g++/make等
    2、编译安装apache2的依赖,apr/apr-util/pcre
    3、编译安装apache2
    4、启动测试

    配置脚本

    将下面的代码保存成文件到ubuntu上,
    以root身份运行,即可等待编译完成。
    亦可直接在ubuntu上使用git clone 从 https://gitee.com/amnotgcs/mixed-tips.git 地址clone源代码。

    #! /bin/bash
    # download apr/apr-util/httpd/pcre
    wget https://mirror.bit.edu.cn/apache//apr/apr-1.7.0.tar.gz
    wget https://mirror.bit.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
    wget https://mirrors.bfsu.edu.cn/apache//httpd/httpd-2.4.46.tar.gz
    wget https://nchc.dl.sourceforge.net/project/pcre/pcre/8.44/pcre-8.44.tar.gz
    
    # extra files
    tar zxvf apr-1.7.0.tar.gz | tail
    tar zxvf apr-util-1.6.1.tar.gz | tail
    tar zxvf httpd-2.4.46.tar.gz | tail
    tar zxvf pcre-8.44.tar.gz | tail
    
    # install gcc g++ make
    if dpkg -s gcc >/dev/null 2>&1;then
    	echo "---------------gcc   installed---------------"
    else
    	apt install gcc -y
    fi
    
    if dpkg -s g++ >/dev/null 2>&1;then
    	echo "---------------g++   installed---------------"
    else
    	apt install g++ -y
    fi
    
    if dpkg -s make >/dev/null 2>&1;then
    	echo "---------------make   installed---------------"
    else
    	apt install make -y
    fi
    
    # install libxml2-dev libexpat-dev
    if dpkg -s libxml2-dev >/dev/null 2>&1;then
    	echo "---------------libxml2-dev installed----------"
    else
    	apt install libxml2-dev -y
    fi
    if dpkg -s libexpat-dev >/dev/null 2>&1;then
    	echo "---------------libexpat installed-------------"
    else 
    	apt install libexpat-dev
    fi
    
    # install apr
    cd apr-1.7.0
    ./configure --prefix=/usr/local/apr
    make
    make install
    cd ../
    
    # install apr-util
    cd  apr-util-1.6.1
    ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
    make
    make install
    cd ../
    
    # install pcre
    cd pcre-8.44
    ./configure
    make
    make install
    cd ..
    
    # install httpd
    cd httpd-2.4.46
    ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/cpre
    make
    make install
    cd ..
    
    # clean
    rm -rf httpd-2.4.46*
    rm -rf apr-1.7.0*
    rm -rf apr-util-1.6.1*
    rm -rf pcre-8.44*
    
    ## startup apache
    ldconfig
    echo "-----------------------------------------"
    echo "-----------httpd installed---------------"
    echo "-----------------------------------------"
    echo "-----------set ServerName----------------"
    sed -i "s/#ServerName www.example.com:80/ServerName localhost/g" /usr/local/apache2/conf/httpd.conf
    echo "-----------------------------------------"
    echo "-----------set PATH----------------------"
    sed -i "1a export PATH=$PATH:/usr/local/apache2/bin" ~/.bashrc
    source ~/.bashrc
    echo "-----------------------------------------"
    echo "-----------start httpd-------------------"
    /usr/local/apache2/bin/apachectl -k start
    echo "-----------------------------------------"
    addr=$(ifconfig | grep 'inet addr' | sed 's/^.*addr://' | sed 's/ Bcast.*$//g' | head -n 1) 
    echo "          $addr"
    echo "-----------------------------------------"
    
    
    
    有了计划记得推动,不要原地踏步。
  • 相关阅读:
    python-使用pyecharts绘制各省份985学校数量图
    python-将多个表格的信息合并到一个表格中
    python-使用百度AipOcr实现表格文字图片识别
    python安装OCR识别库
    python-一种去掉前后缀获取子串的方法
    python-一种字符串排序方式
    How to write educational schema.
    RabbitMq related
    OPENId是什么, OAUTH 是什么
    使用abp的 redis cache
  • 原文地址:https://www.cnblogs.com/amnotgcs/p/14150459.html
Copyright © 2020-2023  润新知