Apache2 + 禁用默认虚拟服务器

Apache2 + 禁用默认虚拟服务器

这是我第一次真正尝试自己设置服务器。

到目前为止一切运行良好。我添加了一个新的虚拟服务器并更改了我的域的 A 记录,现在一切运行正常。

但是:我想“阻止”对默认 www 目录的访问(就我而言var/www)。现在,当我输入服务器 IP 而不是域时,我会进入默认 www 目录 - 我想禁用它。

我不想设置重定向,而只是禁止用户、搜索引擎等在访问时查看任何内容http://myip/

目前,我正在通过添加一个空的方法来解决这个问题index.html,但我实际上想阻止所有请求,只允许访问我的域(它们位于像“ var/www/sites/domain.com/www”这样的子目录中)

我希望你明白我的意思——我的英语很烂:/

ps 因为我安装了 webmin 并且我通过它访问它http://myIp:webminPort- 我想我实际上只想阻止端口 80,但不确定...

答案1

您需要保持端口 80 开放,因为 domain.com/www vhost 的所有内容也都会通过 80 传输。

apache 有一个默认的 vhost 设置,您只需要在 httpd.conf 中将其注释掉。

要在 webmin 中编辑配置:

 Webmin -> Servers -> Apache Website -> Global Configuration

慢慢地读一遍,你会发现默认的 vhost 代码块,只需将其注释掉即可。这是值得的,因为无论如何你以后可能都想调整设置。

Andre(OP)确定默认 vhost 定义位于 /sites-enabled/default-000 中

这是您要查找的部分:

### Section 2: 'Main' server configuration
#
# The directives in this section set up the values used by the 'main'
# server, which responds to any requests that aren't handled by a
# <VirtualHost> definition.  These values also provide defaults for
# any <VirtualHost> containers you may define later in the file.
#
# All of these directives may appear inside <VirtualHost> containers,
# in which case these default settings will be overridden for the
# virtual host being defined.
#

使用井号注释掉第 2 部分中的这些指令:

#ServerName
#<Directory />
#<Directory>
#---comment out all contents of this directory block---
#<Directory /var/www/html>
#---comment out all contents of this directory block---
#</Directory>
#DocumentRoot

相关内容