【问题标题】:Create dynamic subdomains创建动态子域
【发布时间】:2012-08-03 18:51:03
【问题描述】:

我已经有一段时间没有考虑一些网站正在实施的这个功能了,它看起来非常成功。

tumblr.comblogger.comwordpress.com 等网站允许用户使用简单的 HTML/PHP 表单从网站内注册新的子域名。以我目前对 PHP 的了解,我无法弄清楚自己是如何做到的。我已经阅读了一些关于此的帖子,但仍然无法对此建立清晰的概念。

那么,我如何创建一个允许用户在我的网站 (www.username.mydomain.com) 上注册自己的子域的脚本,除此之外,我如何允许他们使用不同的网站模板(如 wordpress.com做)。这可以在共享服务器上完成还是需要专用服务器?

【问题讨论】:

标签: php apache subdomain


【解决方案1】:

如何借助 PHP 和 Htaccess 创建动态子域 我们可以创建动态子域,例如顶级网站,它们在用户名的帮助下为我们提供子域访问权限,我将尽力为程序员提供最佳解决方案。我将解释如何使用 htaccess 和 PHP 来创建动态子域,使用它您可以轻松地在单个服务器上托管多个子域。

创建动态子域的过程

  1. 在域名设置中添加区域记录 打开您的域名提供商的设置并转到您的域 DNS(域名设置),单击添加区域记录。

  2. 创建记录并指向 IP 现在您需要为所有子域创建自定义 A 记录。

选择一条记录,HOST * POINTS TO:您的 IP 地址

示例:102.30.138.121

创建一条记录并指向 ip prashantabhishek.com

  1. 对主机 @ 重复相同的操作。 通过 Prashantabhishek.com 创建动态子域

  2. 添加 CNAME 记录 HOST www 指向@(指向您的 IP 地址。)

动态子域名c名记录

保存设置,享受代码效果。 阅读更多:https://www.prashantabhishek.com/blog/view-post/how-to-create-dynamic-subdomain-with-the-help-of-php-and-htaccess/

【讨论】:

    【解决方案2】:

    创建通配符子域很容易。查看我的帖子以在 Create subdomains on the fly with .htaccess (PHP) 中动态创建通配符子域。

    【讨论】:

      【解决方案3】:

      这些子域问题被归结为nice URLsfriendly URLs 等级别,因为此功能有不同的名称。

      基本上,您所做的是设置重定向,以便如果有人输入foobar.example.org,服务器将提供example.org/user.php?name=foobarexample.org/foobar。在此之后,只需要您如何组合 PHP 脚本,以便正确解析 user.php/foobar 的内容即可。 “注册”部分在您的 DocumentRoot 中的 .htaccess 文件中静态完成。

      当然,这需要对不存在的“子域”进行某种适当的错误处理。

      【讨论】:

      • 是的,我已经阅读了一些关于重定向的帖子,它看起来是一个不错的选择。但是,正如我想象的那样,地址栏中的 URL 在重定向后会发生变化,从user.mydomain.com 变为mydomain.com/user。如何保持 URL 不变,例如 user.mydomain.com/page1user.mydomain.com/page2etc。还有一个问题,这是否可以在共享服务器上完成,因为一些托管公司不允许用户访问 .htaccess 并对其进行更改。
      • 像这样的高级配置可能无法在共享服务器上实现,因为它需要大量使用 .htaccess。 Wordpress 和 Tumblr 等公司拥有自己的专用服务器集群。相关的.htaccess 指令是mod_rewrite 模块。
      【解决方案4】:

      我可以告诉你一个简单的方法。 首先,您必须在您的域中启用子域。您可以搜索“通配符-dns 和子域”。接下来就是编程逻辑了。

      在注册时,您可以要求一个唯一的子域名。登录后重定向到注册的子域。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-08-14
        • 2017-07-02
        • 1970-01-01
        • 2013-12-24
        • 1970-01-01
        • 2012-04-01
        • 2012-05-15
        相关资源
        最近更新 更多