CentOS HTTPD SSL 404 错误

CentOS HTTPD SSL 404 error

我在 VMWare 上全新安装了 Linux CentOS。端口 80 和 443 在我的路由器中打开。为了限制可能出现的问题,我暂时禁用了 SELinux,并停止了 iptables 服务。

我已按照有关使用 CentOS 设置 SSL 安全 Web 服务器的文章中的说明进行操作:https://wiki.centos.org/HowTos/Https

以下是我对默认 ssl.conf 文件所做的唯一更改:

.

<VirtualHost _default_:443>
 ServerName www.example.com
 SSLCertificateFile /etc/pki/tls/certs/example.crt
 SSLCertificateKeyFile /etc/pki/tls/private/example.key
</VirtualHost>

使用局域网中的任何计算机,我都可以从我的 HTTPD Web 服务器获取 HTTP(80) 和 HTTPS(443) 网页。在不同网络上使用计算机时,我可以获得 HTTP(80) 页面。但是,HTTPS(443) 页面会产生“错误 404 找不到所请求的资源。”

使用不同网络中的计算机获取 HTTP(80) 页面,我在该日志中看到连接:

使用不同网络中的计算机请求 HTTPS(443) 页面,这些日志不包含任何新事件:

客户端上的 Wireshark 捕获未显示任何相关的 HTTP(80)、HTTPS(443) 或 SSL 数据包。

由于请求 HTTPS(443) 网页时日志没有显示事件,并且 Wireshark 也没有捕获数据包,所以我不确定下一步该去哪里诊断这个问题。如果有任何关于诊断问题的提示或建议,我将不胜感激。

我能够解决这个问题。本文中的说明提供了修复方法:https://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-httpd-secure-server.html.

原来我的ssl.conf文件的域名里没有www或者.com,像这样:

<VirtualHost _default_:443>
 ServerName www.example.com
 SSLCertificateFile /etc/pki/tls/certs/example.crt
 SSLCertificateKeyFile /etc/pki/tls/private/example.key
</VirtualHost>

我注意到 CentOS 文档中使用了 www 和 .com。我创建了一个新的证书和私钥,然后更新了 ssl.conf 文件。

<VirtualHost _default_:443>
 ServerName www.example.com
 SSLCertificateFile /etc/pki/tls/certs/www.example.com.crt
 SSLCertificateKeyFile /etc/pki/tls/private/www.example.com.key
</VirtualHost>

现在我在远程网络上请求网页时不再收到错误 404。这告诉我,证书、私钥和ssl.conf文件的格式都有特定的要求。