ubuntu1604编译安装apache2(httpd-2.4.18)+配置openssl环境

ubuntu1604编译安装apache2(httpd-2.4.18)+配置openssl环境

下载安装包

http://archive.apache.org/dist/apr/apr-util-1.5.4.tar.gz

http://archive.apache.org/dist/apr/apr-1.5.2.tar.gz

http://archive.apache.org/dist/httpd/httpd-2.4.18.tar.gz

将apr-util-1.5.4.tar.gz,apr-1.5.2.tar.gz,httpd-2.4.18.tar.gz下载后放置在同一目录TMP_DIR下。

执行编译安装脚本

在TMP_DIR目录中创建如下内容的脚本,并执行脚本编译安装apr-util,apr,pcre3,httpd等。

#!/bin/bash
sudo echo
sudo apt-get install -y openssl libssl-dev
HOME_DIR=`pwd`

if [ ! -d apr-1.5.2 ];then
    tar -zxvf apr-1.5.2.tar.gz
fi
if [ ! -d apr-util-1.5.4 ];then
    tar -zxvf apr-util-1.5.4.tar.gz
fi
if [ ! -d httpd-2.4.18 ];then
    tar -zxvf httpd-2.4.18.tar.gz
fi

cd ${HOME_DIR}
cd apr-1.5.2 
./configure --prefix=/usr/local/apr && sudo make install
if [ $? -ne 0 ];then
    exit 0
else
    echo "-----------------------------"
    echo "[I] Install apr-1.5.2 SUCC..."
    echo "-----------------------------"
    sleep 1
fi

cd ${HOME_DIR}
cd apr-util-1.5.4 
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr && sudo make install
if [ $? -ne 0 ];then
    exit 0
else
    echo "----------------------------------"
    echo "[I] Install apr-util-1.5.4 SUCC..."
    echo "----------------------------------"
    sleep 1
fi

sudo apt-get install -y libpcre3 libpcre3-dev

#Install apache2. version:2.4.18
cd ${HOME_DIR}
cd httpd-2.4.18
./configure \
    --prefix=/usr/local/httpd \
    --with-apr-util=/usr/local/apr-util \
    --with-apr=/usr/local/apr \
    --enable-ssl \
    --with-ssl=/usr/lib/ssl && sudo make install
if [ $? -ne 0 ];then
    exit 0
else
    echo "----------------------------------"
    echo "[I] Install httpd-2.4.18 SUCC..."
    echo "----------------------------------"
    sleep 1
fi

# configure openssl key crt
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /usr/local/httpd/conf/server.key -out /usr/local/httpd/conf/server.crt

修改配置文件

修改conf/httpd.conf文件,去掉以下行首的#注释:

...
#LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
...
#LoadModule ssl_module modules/mod_ssl.so
...
#Include conf/extra/httpd-ssl.conf
...

去掉后的结果如左图所示:

运行测试

执行以下命令重启apache2服务器:

sudo /usr/local/httpd/bin/httpd -k restart

执行命令后会显示一条如下警告信息,忽略它:

AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
httpd not running, trying to start

执行以下脚本测试http和https是否可以访问:

#!/bin/bash
curl http://127.0.0.1 >/dev/null 2>&1
http_isok=$?
curl https://127.0.0.1 --insecure >/dev/null 2>&1
https_isok=$?

if [ ${http_isok} -eq 0 ] && [ ${https_isok} -eq 0 ];then
    echo "[I]Configation apache2+openssl env SUCC..."
else
    echo "[I]Configation apache2+openssl env FAILED..."
fi

测试结果:

[I]Configation apache2+openssl env SUCC...

当然您也可以通过浏览器访问以下网页看看是否ok

访问网页:http://127.0.0.1/

访问网页:https://127.0.0.1/

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值