代码之家  ›  专栏  ›  技术社区  ›  Tam

如何让用户的域名指向他们在我的网站配置文件

  •  2
  • Tam  · 技术社区  · 14 年前

    我想实现类似Tumblr或Wordpress的东西,让用户选择让他们的域名指向他们的配置文件。对于实例用户,请转到其域注册器和我的服务器的IP,然后:www.usersdomain.com将指向www.mysite.com/userid没有实际转发,所以域名仍然会显示在地址栏中。

    我希望你能详细描述一下这样做的步骤。

    我正在使用rubyonrails,如果这有什么不同的话。我的生产环境有Nginx和Passenger。

    1 回复  |  直到 14 年前
        1
  •  3
  •   Daniel O'Hara    14 年前

    我的观点是:

    1. 每个HTTP请求都包含 Host 标题。这个头允许我们创建虚拟主机:许多主机只能指向一个IP;
    2. 在应用程序中,只需提取 主持人 从请求和查询您的数据库的用户与这样的主机。

    例如,您的服务的IP是 100.100.100.100 红袜网 . 我需要改变DNS(一个A记录)我的域指向你的IP。应该是我做的。

    你自己的IP,不是我的 :

    GET / HTTP/1.1
    Host: redsocks.com
    ...
    

    您的应用程序具有处理我的请求的代码(伪代码):

    user = User.find_by_domain(REQUEST["Host"])
    if user == nil
       render_not_found_page
    else
       contents = Content.get_contents_of_user(user)
       render_contents_of_user contents 
    end