【发布时间】:2021-04-09 18:35:01
【问题描述】:
我在 Debian 计算机上使用 apache 自托管网站,在我的 DNS 配置中,我已将我的域 (*.mydomain.com) 的所有子域设置为转到我的 Debian 计算机的 IP。如何配置 apache,以便如果有人转到没有虚拟主机的子域,我为每个子域都有一个单独的文件,他们会收到 404 错误,而不是看到根域上的内容?我尝试编辑 000-default.conf 文件并将以下内容放入其中:
<VirtualHost *:80>
ServerName null
Redirect 404 /
</VirtualHost>
<VirtualHost *:443>
ServerName null
Redirect 404 /
</VirtualHost>
但现在当我访问 mydomain.com 时,我收到以下错误:
This site can’t provide a secure connection
mydomain.com sent an invalid response.
ERR_SSL_PROTOCOL_ERROR
奇怪的是,如果我转到我为 mydomain.com 配置的子域之一,它可以正常工作,并且我看到了应该在子域上的页面。
【问题讨论】:
-
443端口需要配置ssl。这就是为什么它不起作用。我相信只有当您使用 HTTPS 访问该网站时才会发生这种情况。
-
并且,不要将端口 443 添加到 000-default.conf,而是使用 default-ssl.conf 文件。使用
a2enconf default-ssl启用 default-ssl.conf,然后从 000-default.conf 中删除 443。然后,使用systemctl restart apache2重新启动/重新加载 apache
标签: apache debian apache2 apache2.4