【问题标题】:Configure the Django development server (./manage.py runserver) to handle wildcard sub-domains?配置 Django 开发服务器 (./manage.py runserver) 来处理通配符子域?
【发布时间】:2011-01-22 21:57:21
【问题描述】:

你能配置一个 Django 开发服务器来处理通配符子域吗?我需要在我的开发服务器上测试任意子域,而这无法通过修改 /etc/hosts/

子域实际上控制着网站上的关键行为(每个用户都有自己的子域,并且一个用户可以访问多个需要在开发中进行非平凡测试的子域。)

【问题讨论】:

    标签: django


    【解决方案1】:

    如果我正确理解您的问题,则 Django 开发服务器不是问题。您必须设置 DNS 服务器以处理 wildcard records 或将特定子域添加到主机文件。

    我相信您知道,Django 开发服务器默认使用127.0.0.1:8000,但您可以覆盖它。如果您用localhost 覆盖它,它可能由您的/etc/hosts 文件而不是DNS 处理。如果你用 /etc/hosts 文件中没有的东西覆盖它,它由 DNS 处理。

    /etc/hosts 文件中添加特定子域的简单案例,您已经在问题中介绍过。不幸的是,您无法设置主机文件来处理通配符子域,因为您需要设置 DNS (OSX Snow Leopard instructions)。

    现在——如果您可以只通过 Firefox 进行测试,您可以使用代理自动配置以更简单的方式解决问题。请参阅answers to this * question

    【讨论】:

    • 运行 OSX。 DNS会影响访问本地主机吗?请详细说明。
    • 现在扩展我的答案,希望对您有所帮助!