Как обслуживать пользовательские домены, указывающие на поддомен в приложении Saas

Я хочу создать пример SaaS-приложения, с помощью которого пользователи смогут регистрироваться, создавать веб-страницы, использовать шаблоны и/или настраивать их с помощью пользовательских CSS, обслуживать свои веб-страницы за пределами пользовательских доменов.

Я рассматривал возможность сохранения шаблонов на S3/других CDN вместе с файлами media/stylesheets/js. Хотя все технически возможно (практично? это может быть спорным ). В любом случае, мне было трудно понять, как в этом случае веб-сайты будут обслуживаться за пределами пользовательских доменов? Например, когда они регистрируются, они могут получить адрес subdomain.domain.com. Однако как они указывают customerdomain.com, чтобы при вводе customerdomain.comон обслуживал тот же контент, что и customerdomain.domain.com, а URL-адрес оставался customerdomain.com

. Кроме того, если я хочу иметь «feature», при этом пользовательские домены может быть платной функцией. Как я могу ограничить его только платными пользователями?

Обычно, когда мы настраиваем веб-сайты, мы указываем его в файле конфигурации виртуального хоста (apache )и даем ему псевдонимы, поэтому он ищет и обслуживает эти псевдонимы. В этом случае я не хочу иметь отдельный файл vhost для каждого регистрирующегося человека. Есть ли альтернатива? Как я могу это запрограммировать? Есть ли какие-то ошибки, о которых нужно знать?

Одно из решений, которое я видел, состоит в том, чтобы сервер обслуживал подстановочный домен, то есть *.domain.com, и отдельный виртуальный хост для каждого пользовательского домена, однако я бы предпочел избежать этого, если смогу.

Спасибо.

13
задан Nasir 3 May 2012 в 20:04
поделиться