CentOS HTTPD SSL 404错误

时间:2016-03-17 01:34:44

标签: apache ssl centos http-status-code-404

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

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

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

  • 更改服务器名称以列出我的服务器名称
  • 修改了SSLCertificateFile,其名称为.crt文件
  • 修改了SSLCertificateKeyFile,其名称为我的.key文件

<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)页面会产生&#34; 错误404找不到所请求的资源。&#34;

enter image description here

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

  • 的/ var /日志/ httpd的/访问日志

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

  • 的/ var /日志/ httpd的/访问日志
  • 的/ var /日志/ httpd的/ error_log中
  • 的/ var /日志/ httpd的/ ssl_request_log
  • 的/ var /日志/ httpd的/ ssl_access_log

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

由于日志在请求HTTPS(443)网页时没有显示事件,而且Wireshark也没有捕获数据包,因此我不确定下一步要转向诊断此问题。如果在诊断问题的方法上有任何提示或建议,我绝对会感激。

1 个答案:

答案 0 :(得分:0)

我能够解决这个问题。本文中的说明提供了修复: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文件的格式有特定要求。