【问题标题】:How do I allow users to map their domains to a url on my site?如何允许用户将他们的域映射到我网站上的 url?
【发布时间】:2010-11-01 09:01:30
【问题描述】:

如何允许用户将他们的域映射到我网站上的网址? (就像 tumblr 或博客所做的那样)

该应用程序正在 Django 中开发。我希望用户能够将他们的域映射到 mydomain.com/username(这可能吗,还是我需要像 username.mydomain.com 这样的格式?)

此外,我的应用程序在 VPS 上运行,因此我的名称服务器为 ns1.mydomain.com 和 ns2.mydomain.com。

【问题讨论】:

    标签: django url url-routing friendly-url vps


    【解决方案1】:

    最简单的方法是通过域隐藏。大多数域名提供商将允许用户使用此选项。

    另一个简单的想法是为您的用户提供一个非常通用的 html 页面,该页面仅在 iframe 中包含他们在您网站上的 url,并将其放置为默认目录索引(例如 index.html)。

    上述两个都将始终显示基本域(没有诡计)。如下所述,假设 CNAME DNS 记录能够编辑 DNS 记录,则可以解决此问题...

    www.someuserdomain.com.  CNAME username.yoursite.com
    

    【讨论】:

    • 用户不需要使用 mod_rewrite,对吗? Blogger 只是指示用户为其域名或指向 ghs.google.com 的子域添加 CNAME 记录,这非常简单,并且比伪装或 iframe 效果更好。
    • 是的,正如您发布的那样,我正在编辑它。你是对的,CNAME 记录比 A 记录更容易
    • 这正是我正在寻找的。允许用户添加 cname 记录,然后在我的站点上使用域作为 url。我需要进行哪些设置才能使其正常工作?
    • 我相信像 domain.com/username 一样,您可以使用 Apache VirtualHost 并将 ServerName 设置为该用户的自定义域(CNAME 记录的左侧)并将 DocumentRoot 指向用户的目录。
    【解决方案2】:

    在这种情况下,您必须咨询您的特定主机设置,以了解如何以编程方式更改您的 DNS 设置。您是否可以真正做到这一点取决于主机。如果您的服务器正在运行您有权访问的 DNS 服务器,您可以这样更改它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-30
      • 2010-11-27
      • 2022-07-27
      • 2017-08-30
      • 2013-07-02
      相关资源
      最近更新 更多