gpt4 book ai didi

apache - 如何为 Apache httpd 安装 mod_ssl?

转载 作者:太空宇宙 更新时间:2023-11-03 12:36:55 25 4
gpt4 key购买 nike

好的

所以我不久前安装了 Apache httpd,最近又回来尝试设置 SSL 并让它为多个不同的 tomcat 服务器提供服务。

目前,我有两个完全独立的 Tomcat 实例,服务于稍微不同的版本(一个用于开发,一个用于演示)我的 Web 应用程序到两个不同的端口:

  • example.com:8081
  • example.com:8082

我已经成功地(早在一月)使用 mod_jk 来获取 httpd 来为 http://www.example.com 提供相同的 Tomcat 实例:8090/devhttp://www.example.com:8090/demo (8090 因为我在这个阶段通过 Jetty 在 8080 上运行了另一个应用程序)使用以下httpd.conf 中的代码:

LoadModule jk_module modules/mod_jk.so
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel debug

<VirtualHost *:8090>
JkMount /devd* tomcatDev
JkMount /demo* tomcatDemo
</VirtualHost>

我不想做的是启用 SSL。

我已将以下内容添加到 httpd.conf:

Listen 443
<VirtualHost _default_:443>
JkMount /dev* tomcatDev
JkMount /demo* tomcatDemo
SSLEngine on
SSLCertificateFile "/opt/httpd/conf/localhost.crt"
SSLCertificateKeyFile "/opt/httpd/conf/keystore.key"
</VirtualHost>

但是当我尝试使用 apachectl restart 重新启动 Apache 时(是的,在关闭我提到的其他应用程序之后,它不会使用 https 连接)我不断收到错误消息:

Invalid command 'SSLEngine', perhaps misspelled or defined by a module not included in the server configuration. httpd not running, trying to start

我查看了 httpd/modules 目录,确实没有 mod_ssl,只有 mod_jk.sohttpd .exp.

我试过使用 yum 安装 mod_ssl,它说它已经安装了。事实上,我可以在 /usr/lib/httpd/modules 中找到 mod_ssl.so 但这不是我安装 httpd 的路径这是 /opt/httpd,实际上 /usr/lib/httpd 只包含 modules 目录。

谁能告诉我如何为我的 httpd 安装位置正确安装 mod_ssl 以便我可以克服这个错误?

最佳答案

我发现我需要在 Apache 中启用 SSL 模块(如果您没有以 root 身份运行,显然在命令前加上 sudo):

a2enmod ssl

然后重启Apache:

/etc/init.d/apache2 restart

用于 Ubuntu/Debian 的 Apache 中 SSL 的更多详细信息 here .

关于apache - 如何为 Apache httpd 安装 mod_ssl?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5257974/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com