是否可以通过 IP 地址访问共享同一个 IP 的网站之一?

是否可以通过 IP 地址访问共享同一个 IP 的网站之一?

我在 Linode 上托管了几个网站,它们都共享同一个 IP 地址。我使用 webmin/virtualmin 来管理我的服务器和网站。是否可以通过 IP 地址访问其中一个网站?目前,如果我访问 IP,浏览器中显示的只是一个 apache2 默认页面:http://45.79.146.98/。我认为这也指向我的服务器上的某个文件夹,但我不知道它在哪里。

PS如果我可以通过以下方式访问我的网站http://45.79.146.98/某物,这也是可以接受的。但我不知道从哪里开始做这件事。

答案1

感谢@marctxk 提供的文档使我的评论成为答案

您的 apache 配置中的第一个 VHost 是未定义 FQDN 时显示的 VHost。尝试将您想要的站点放在其他站点的顶部,这就是仅通过 IP 地址访问时显示的站点。

Apache 文档:

星号匹配所有地址,因此主服务器不处理任何请求。由于 ServerName 为 www.example.com 的虚拟主机在配置文件中位于首位,因此它具有最高优先级,可以视为默认或主服务器。这意味着,如果收到的请求与指定的 ServerName 指令之一不匹配,则将由第一个服务器处理

答案2

在您的虚拟主机配置文件中,应该可以将其定义Servername为您的 IP 地址。

例子:

<VirtualHost 45.79.146.98:80>
ServerAdmin [email protected]
ServerName 45.79.146.98
ServerAlias www.example.com
DocumentRoot /var/www/example.com/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

来自Apache 文档

句法:ServerName [scheme://]domain-name|ip-address[:port]

答案3

在浏览器中打开该 IP 地址,它会告诉您该文件位于/var/www/html/index.html

编辑。由于 OP 拥有服务器,所以可以。您也可以修改该 vhost 和 apache 配置。我以为 linode 正在进行虚拟托管。但它正在进行虚拟服务器托管。因此 op 可以完全控制服务器。您必须修改 /etc/apache2/sites-enabled 目录中的默认配置。

在该配置文件中,将路径从 更改/var/www/html/为您的站点路径。

相关内容