访问别名 phpmyadmin 只有一个主机

访问别名 phpmyadmin 只有一个主机

我有两个问题想问您。

  1. 我向我的服务器添加了两个域名。现在我发现我可以登录 ftp 并写入两个域名。如何仅将一个域名设置为该服务器名称?

  2. 如何授予访问别名 phpmyadmin 的唯一域(即服务器名称)?

答案1

  1. FTP 没有虚拟主机的概念。因此,FTP 服务器始终可以通过 IP 地址访问,并且所有域名都映射到该 IP 地址。

因此,您需要为另一个域名获取一个单独的 IP 地址,然后将 FTP 守护程序配置为仅监听单个 IP 地址。

  1. 您在 Web 服务器配置中为 PHPMyAdmin 配置一个虚拟主机。

答案2

大多数协议/服务不了解主机名。

这意味着,应用程序将执行主机名到 IP 地址的名称解析,然后尝试连接到IPv4 或 IPv6 地址 返回并最初使用的主机名将会丢失. 该 IP 地址上要么有服务正在监听,要么没有。

因此,为了真正为不同的主机和/或域名提供不同的服务,每个主机/域都需要自己的 IP 地址,并且您可以将服务配置为监听一个 IP 地址而不是另一个 IP 地址。

这并不总是可行的(特别是在 IPv4 地址有限的情况下),因此有解决方法:

HTTP 是一种协议,它要求客户端一旦成功连接到 Web 服务器的 IP 地址,就Host:在每个请求中包含一个带有原始主机名的标头。

TLSSNI 扩展相似地添加原始主机名添加到请求中。这样就可以配置 Web 服务器,使其根据网站访问者使用的原始主机名显示不同的证书和/或内容(或无内容)。

这通常称为基于名称的虚拟主机,允许服务器管理员为不同的站点启用不同的内容(例如 PHPMyAdmin 安装)。

虽然 FTP 协议也存在类似的扩展,但它是最近才添加的,当时 FTP 已经是一种古老且广泛实施的协议,从未真正被采用。
因此,大多数 FTP 客户端不会向服务器传输它们请求的主机名,即使它们这样做了,大多数 FTP 服务器也缺乏利用该主机名执行一些有用操作的能力……

另请参阅:如何使协议 foo 能够识别主机名?

相关内容