将 Wheezy 升级到 Jessie apache 2 后 SSL 停止工作

将 Wheezy 升级到 Jessie apache 2 后 SSL 停止工作

我将服务器从 Wheezy 升级到 Jessie,Apache 2.4 停止工作......

特别是在端口 443 上没有 ssl ....

telnet myhost 443
GET https://myhost
<html><meta http-equiv='Content-Type' content='text/html; charset=utf-8'/><body>Something in /var/www/html/index.html</body></html>>Connection closed by foreign host.

它应该是:

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>400 Bad Request</title>
</head><body>
<h1>Bad Request</h1>
<p>Your browser sent a request that this server could not understand.<br />
Reason: You're speaking plain HTTP to an SSL-enabled server port.<br />
 Instead use the HTTPS scheme to access this URL, please.<br />
</p>
</body></html>
Connection closed by foreign host.

SSLEngine 已开启 - 昨天一切正常,但那是 Wheezy,而不是 Jessie......

* 更新 * 新鲜的想法 - 我发现,与 :443 的连接记录到 /var/log/apache2/access.log 而不是 /var/log/apache2-ssl/access.log 但为什么呢?

答案1

解决方案很难找到......只有巧合才能帮助我找到它。

Apache2.4 需要.conf扩展....

我有两个文件:/etc/apache2/sites-available/http/etc/apache2/sites-available/https,当然还有相同的符号链接/etc/apache2/sites-enabled/

尝试找出我采取的解决方案default-ssl.conf并将其设为符号链接,它成功了!因此,我复制了每一行以查找差异所在,但一无所获。我将 重命名为httpshttps.conf并创建了一个符号链接,它也能正常工作!!!

最大的错误是我自己创建符号链接,没有使用a2ensite- 这将导致该http站点不存在 - 直到将其重命名为http.conf

6个小时的搜索一无所获......唉......但也许这会对别人有所帮助..

答案2

您读过 Apache 2.4 的发行说明吗?

“值得注意的是,访问控制指令已经发生了很大变化,需要手动迁移到新指令。”

https://www.debian.org/releases/jessie/amd64/release-notes/ch-information.en.html#apache-httpd-incomat

答案3

我在使用授权配置时遇到了同样的问题。发现和更改会很延迟。

    <Directory /var/www/webalizer>
            Options Indexes FollowSymlinks MultiViews
    #       AllowOverride all
    #       Order allow,deny
            Require all granted
    </Directory>

旧设置是注释(#)。它对你有用吗?

相关内容