通过子域处理多个站点

Handle multiple sites through subdomains

我正在尝试通过创建我自己的 CMS 基础架构来提高我在 PHP 方面的技能,可能基于像 FuelPHP 这样的轻量级框架。
因为我觉得有一个目标比较好,所以想借此机会搭建一个多站点CMS。

这将是一个游戏的 CMS。
基本上,这里的工作流程:

有人在主站点上创建了一个帐户 (http://www.mainsite.com), then create a site for his server (http://my-beautiful-server.mainsite.com)。来自他的服务器的人然后会来到子域并注册与论坛、画廊互动,更新他们的帐户等。

使用子域是正确的方法吗?
如果我为我的 DNS 使用通配符,必须如何配置 vhost 以根据子域重定向到正确的文件夹?我可以不为每个站点使用一个文件夹系统,只使用一个应用程序来处理所有事情吗?仅通过 "passing" 子域作为应用程序的变量来告诉它我在哪个站点上?靠谱吗?

如果将来我想提出自定义域名,这种方法是否可行?我只需要自己处理域名注册并添加虚拟主机配置以重定向到正确的文件夹?

我对正确和最稳健的方法有点迷茫。

今天拿到域名了,我拿一点VPS做测试

非常感谢任何帮助指导我正确的方向,抱歉我的英语不好,我在 Internet 上找不到资源。

Is using subdomains a correct approach ?

这是一个完全可以接受的方法。

If I use a wildcard for my DNS, how must the vhost be configured to redirect on the correct folder based on the subdomain ?

您使用默认虚拟主机来捕获对不同主机名的所有请求。

然后您可以使用 mod_rewrite 或通过在应用程序级别检查请求的主机名来随机播放它们。

Can I not use a folder system for each site and use only one app to handle everything by just "passing" the subdomain as a variable to the app to tell it on which site I am ? Is it reliable ?

是的。

您的 PHP 已经可以通过 $_SERVER['HTTP_HOST'] 使用该变量。

If in the future I want to propose custom domain names, is it possible with this approach ?

是的。就网络服务器而言,域名和子域之间没有实际区别。

I would only need to handle domain name registering myself and add a vhost configuration to redirect on the correct folder ?

您甚至不需要特定的虚拟主机配置。您的默认值就足够了。