本地主机 ubuntu 8.04 的通配符子域名

本地主机 ubuntu 8.04 的通配符子域名

我正在使用 ubuntu 8.04 和 apache2,为了开发,我需要一个通配符子域名。

例如如果我访问 abc.localhost/ 它应该重定向到 localhost/

你们能帮我如何在 ubuntu 8.04 中实现这一点吗?

谢谢。

答案1

好吧,我经过大量的研发后才配置好它,但是我无法使用 /etc/hosts 文件,因为我想要一个通配符子域名。
- 安装了 dnsmasq 并在 /etc/dnsmasq.conf 文件中创建了一个虚拟域 example.com,
并添加了以下几行

address=/example.com/192.168.0.2
listen-address=192.168.0.1  
  • 在 resolv.conf 中添加 192.168.0.1 作为名称服务器

这里 192.168.0.2 是我的计算机,192.168.0.1 是 DNS 服务器

答案2

这是完全可行的,但是您至少需要以下之一:

  • 能够将记录添加到您的 DNS 服务器中。
  • 让您的 DNS 管理员为您添加记录的能力。
  • 在您的系统上植根。

如果无法向您现有的 DNS 服务器添加记录,但是您拥有系统上的 root 权限,那么您应该:

  1. 安装绑定
  2. 配置转发器以将未处理的查询传递到您现有的 DNS 服务器。
  3. 将您域的通配符条目添加到绑定配置中。

配置 Apache 以使用默认虚拟主机。

关联应该有帮助。

答案3

虽然您不能通过这种方式使用通配符,但您可能会发现添加条目/etc/hosts比更改 DNS 配置更容易。

例如,您可以添加以下几行:

127.0.0.1       abc.localhost
127.0.0.1       def.localhost
127.0.0.1       ghi.localhost

操作系统(以及大多数应用程序,那些不尝试聪明并执行自己的 DNS 查找的应用程序)将默认使用在/etc/hosts使用 DNS 服务器查找值之前的值。

Apache 配置是相同的,无论您是通过 DNS 还是通过 hosts 文件对名称->地址映射进行排序。此外,无论使用哪种技术,在进行更改后,您可能需要重新启动客户端应用程序(或使用Ctrl+强制在 Web 浏览器中进行完全刷新F5),因为它们可能会将主机名->地址查找结果缓存一段时间。

相关内容