Apache 无法确认 HTTPS 虚拟主机

Apache 无法确认 HTTPS 虚拟主机

我在运行 Arch Linux 的计算机上运行 Apache 2.6。它运行一个邮件服务器,因为我想设置网络邮件,所以我决定创建自己的 SSL 证书,因为只有我的朋友和家人会使用它。我将 Apache 配置为在端口 443 上提供安全数据,但它似乎不起作用。

我的虚拟主机文件:

<VirtualHost *:443>
    ServerAdmin [email protected]
    DocumentRoot "/srv/http"
    <IfModule mod_ssl>
        SSLEngine on
        SSLCertificateFile /srv/ssl/duncan.crt
        SSLCertificateKeyFile /srv/ssl/duncan.key
        SSLCertificateChainFile /srv/ssl/duncan.crt
    </IfModule>


</VirtualHost>

我还确保取消注释 httpd.conf 中的 mod_log_config 和 mod_ssl,以及包含所有虚拟主机的文件的行(我也检查了路径)。发生了什么事?

在错误日志中,我得到:

[Thu Aug 15 11:03:45.445668 2013] [ssl:warn] [pid 29779:tid 139642496866112] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Thu Aug 15 11:03:45.551540 2013] [ssl:warn] [pid 29782:tid 139642496866112] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
[Thu Aug 15 11:03:45.551839 2013] [ssl:warn] [pid 29782:tid 139642496866112] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
[Thu Aug 15 11:03:45.551903 2013] [lbmethod_heartbeat:notice] [pid 29782:tid 139642496866112] AH02282: No slotmem from mod_heartmonitor
[Thu Aug 15 11:03:45.553665 2013] [mpm_event:notice] [pid 29782:tid 139642496866112] AH00489: Apache/2.4.6 (Unix) OpenSSL/1.0.1e configured -- resuming normal operations

我使用以下命令来生成证书:

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout duncan.key -out duncan.crt

答案1

在这种情况下,“但它似乎不起作用”的含义尚不清楚。

也许 Apache 没有在听?

跑步

netstat -tupln

要查看 apache 是否正在监听端口 443,如果没有,那么你可能需要

Listen 443 somewhere in your apache configuration and then restart apache.

相关内容