我有一个简单的 LAMP 堆栈,在 Centos 6.5 上安装了 httpd/Apache。我已经在 /etc/httpd/sites-available/acute.conf 中设置了我的虚拟主机,如下所示:
<VirtualHost *:80>
ServerName acutemedical.co
ServerAlias acutemedical.co
DocumentRoot /var/www/html
ErrorLog /var/www/log/error.log
CustomLog /var/www/log/requests.log combined
Redirect permanent / https://acutemedical.co/
</VirtualHost>
<VirtualHost *:443>
ServerName acutemedical.co
ServerAlias acutemedical.co
DocumentRoot /var/www/html
ErrorLog /var/www/log/error.log
CustomLog /var/www/log/requests.log combined
SSLEngine on
SSLCertificateFile /etc/httpd/ssl/server.crt
SSLCertificateKeyFile /etc/httpd/ssl/server.key
</VirtualHost>
这也是我的 iptables 规则集的输出:
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443
在没有重定向的情况下访问端口 80 的站点时,该站点将没有问题。当访问端口 443 上的站点时,连接被拒绝。当我将重定向指令留在 80 vhost 块中时,同样的问题。
我试图用 http 和 https 卷曲每个 url,只有 http 有效。
我之前已经设置过了,但已经一年左右了(我现在主要使用 nginx)。所以我想知道是否有人可以查看我的配置并告诉我我做错了什么。
我很快就发现了这一点,在我的 httpd.conf 中,我将端口绑定在那里而不是虚拟主机。因此,我将它们从 httpd.conf 中删除,并将 Listen 80 和 Listen 443 添加到 vhost 文件中,并且它起作用了。
我怀疑您没有启用以下功能:
您的错误日志 (ssl_error_log) 中应该有一些内容解释了为什么端口 443 上没有任何监听。
但是您的路径看起来非常不像 CentOS/RHEL6(没有站点可用结构,并且不登录到 /var/www/log/ ),所以我愿意打赌其余的您的配置也不如预期。
PS。ServerAlias 行是多余的。