zoukankan      html  css  js  c++  java
  • apache安装mod_ssl.so 出现 undefined symbol: ssl_cmd_SSLPassPhraseDialog错误解决

    很久很久以前,安装Apache的时候,根本没想过将来的某一天会使用到ssl,所以也就没有安装那个模块,结果今天需要用到的时候,却无从下手了。

    由于在安装Apache的时候,mod_ssl.so这个文件没有被安装,因此决定安装这个文件。安装的方法主要有两种:重新编译安装和加载安装模块。

    安装方法1:简单,就是直接重新编译apache,然后加上–enable-ssl,这个方法就不多说了,这里主要介绍方法2。

    安装方法2:动态安装。Apache有类似PHP那样动态加载模块的机制,首先使用了网上介绍比较多的方法安装:

    注意:下文[apache]表示Apache的安装目录,[source]表示Apache源码目录。

    1. 进入 [source]/modules/ssl

    2. 执行 [apache]/bin/apxs -a -i -c mod_ssl.c

    然后系统会提示安装成功,但是启动httpd的时候却会提示:

    httpd: Syntax error on line 146 of [apache]/conf/httpd.conf: Cannot load modules/mod_ssl.so into server: [apache]/modules/mod_ssl.so: undefined symbol: ssl_cmd_SSLPassPhraseDialog

    于是上网查了很久的资料,结果却不如人意。最终发现安装mod_ssl.so需要指定openssl的相关信息。

    下面是正确的方法:

    1. 进入[source]/modules/ssl

    2.执行 [apache]/bin/apxs -a -i -c -L/usr/lib/openssl/engines/lib -c *.c -lcrypto -lssl -ldl

    重启httpd即可。

    总结:显然第二种方法是比较麻烦的,因此我郑重推荐使用第一种方法:重新编译apache,加上–enable-ssl选项。

  • 相关阅读:
    何时覆盖hashCode()和equals()方法
    JMeter结果树响应数据中文乱码
    HTTP详解
    HTTP协议 (一) HTTP协议详解
    我的cheatsheet
    js 加alert后才能执行方法
    百度云开发者笔记
    sudo: unable to resolve host ubuntu提示的解决
    NUERAL RELATION EXTRACTION WITH MULTI-LINGUAL ATTENTION》阅读笔记
    今天看论文
  • 原文地址:https://www.cnblogs.com/wajika/p/6604002.html
Copyright © 2011-2022 走看看