0

我现在想弄清楚的是设置自定义域托管,以便用户可以在他们选择的任何域上托管个人资料页面。我现在能够让它工作,但它需要大量的定制工作。

我当前的设置是让用户更改他们的 DNS 设置以重定向到我的域。然后在我的域上添加另一个虚拟主机来处理这个新域,然后更新我的 Django 中间件以查看请求中的 PATH_INFO 以选择要服务的页面。

有没有办法可以改变这个过程来自动化这个过程,这样就可以完全自动完成而不需要修改 Apache 或中间件?我正在考虑使用 mod_rewrite 将此信息传递到 Django 中的特定页面,然后在表中进行查找以查看此页面为该域显示的页面。

4

1 回答 1

3

您应该能够设置您的网络服务器,使其接受指向它的任何域。完成此操作后,用户只需创建一条 A 记录,将其域或子域指向您站点的 IP 地址,然后他们的域将显示您的站点。

然后,您只需要在视图中设置一些域检查 ( request.get_host())。例如,您的索引视图应该在主机上分支,加载您的域的主页和任何其他域的用户配置文件。您可以让用户将他们的域添加到他们的个人资料中,然后使用它来查找正确的个人资料。您可能需要添加一些中间件来保护其他视图不被您的域以外的任何人访问,但这基本上是过程。

于 2012-05-23T17:27:21.690 回答