【问题标题】:wildcard subdomains on localhost本地主机上的通配符子域
【发布时间】:2013-02-20 18:04:28
【问题描述】:

所以我在我的本地主机 (xampp) 上有一个正在开发中的网站

http://localhost/new_site/

该站点使用动态子域...在实时服务器上...我的意思是...我需要在我的本地主机上复制它 所以 http://*.localhost/new_site/ 应该加载 http://localhost/new_site/

我找到的解决方案是针对特定子域而不是通配符其中大多数假设您需要一两个子域并且您的项目位于 localhost 的根目录中。

那么有人可以提出解决方案吗?

谢谢, 稀有

【问题讨论】:

    标签: xampp localhost subdomain


    【解决方案1】:

    子域只是 DNS 映射。您不能在 localhost 上映射 DNS,因为 localhost 只是指您的本地环回 IP,而子域指的是 DNS 中完全不同的 IP。

    为了更好地理解这一点:

    当您访问 google.com 时,您的浏览器会向 DNS 服务器查询要连接的 IP。如果您访问 maps.google.com,它将查询不同的 IP,在这种情况下重定向到 http://google.com/maps - 因此,由于 localhost 只是 127.0.0.1,而不是 DNS 引用,因此您不能指定 subdomain.localhost

    【讨论】:

    • 这并不完全正确。只有“localhost”是DNS中的保留名称,而“*.localhost”不是保留名称,可以在DNS中配置为127.0.0.1。我们将其用于本地开发。
    【解决方案2】:

    通配符 (*) 子域在 localhost 上是不可能的。但是,出于测试目的,您可以在位于“C:\Windows\System32\drivers\etc”的“hosts”文件中配置一些子域

    在下面的示例中,我使用 uniedu 而不是 localhost

    127.0.0.1   uniedu
    ::1 uniedu
    
    127.0.0.1 suba.uniedu subb.uniedu
    ::1     suba.uniedu subb.uniedu
    

    您可以在单个条目中添加多个子条目,方法是使用分隔它们 空间

    重要提示:您还必须通过编辑 vhosts 文件在 XAMP/WAMP 中添加相同的 subs

    <VirtualHost *:80>
        ServerName uniedu
        ServerAlias suba.uniedu subb.uniedu
        DocumentRoot "e:/....
        ...
        ...
    </VirtualHost>
    

    【讨论】:

    • 我不太同意“不可能”。请参阅下面的答案...
    【解决方案3】:

    理论上,您可以在您的开发机器上创建一个本地 DNS 服务器,并将您的网络 DNS 记录指向您的本地机器上查找域。这意味着当您在浏览器中键入域名时,浏览器会先询问您的本地 DNS 服务器,然后再询问外部 DNS 服务器。然后,您可以在本地 DNS 服务器上创建自定义区域(包括 *.localhost),然后将其指向 127.0.0.1 或本地 DHCP 颁发的 IP 地址。我建议查看 DNSProxy:

    https://github.com/hubdotcom/marlon-tools - 文档

    https://github.com/hubdotcom/marlon-tools/blob/master/tools/dnsproxy/dnsproxy.py - 代码

    或者查看 DNSMasq:

    https://thekelleys.org.uk/dnsmasq/doc.html - 文档

    https://sixfeetup.com/blog/local-development-with-wildcard-dns-on-linux -教程

    【讨论】:

      猜你喜欢
      • 2019-03-18
      • 2011-11-12
      • 2010-10-15
      • 2016-07-30
      • 2020-11-20
      • 1970-01-01
      • 1970-01-01
      • 2010-10-19
      相关资源
      最近更新 更多