現在、ASP.NET MVC 2 Web アプリケーションを使用しており、アーキテクチャを強化して SAAS モデルをサポートしたいと考えています。最終的には多数の Web アプリケーションを構築する予定なので、それに応じてシステムを設計したいと考えています。
目標は、クライアントが次の URL clientxyz.domain.comにアクセスしたときに、サブスクライブしているすべてのアプリケーションの画像が表示されるようにすることです。これは基本的に、多数のアプリケーション アイコンを含む Web ページです。クライアントがアイコンをクリックすると、次の例の URL clientxyz.domain.com/application_nameで実際の Web アプリに移動します。
現在、GoDaddy を使用してドメインをホストしており、Cloud ベースの iLand サーバーを使用してアプリケーションをホストする予定です。ソフトウェアの性質上、年に数人の新規クライアントのみを予定しています。
いくつか質問があります:
.Net API を使用してその場でサブドメインをプログラムで作成することは可能ですか。GoDaddy がそれを許可しないことは確かです。C# 経由でサブドメインを作成できる別のプロバイダーはありますか。これは間違ったアプローチである可能性があり、クライアント サブドメインを物理的に作成する必要さえない場合があります。代わりに、IIS/MVC で URL 書き換えを使用してこれを達成できるかもしれません?? 書き換えを使用する場合、上記の URL 要件を満たす必要があります。提案/リンク/例はありますか?
テナント/クライアントごとに個別の IIS Web サイトを作成する必要がありますか? それとも、URL 書き換えを使用して、単一の Web サイト/アプリケーション プールを使用する必要がありますか? プログラムで IIS Web サイトを起動できるようです (例: http://www.eggheadcafe.com/tutorials/csharp/d4bba585-b517-4834-8476-ff05b085d86e/iis--create-app-pools-virtual-directories-and -web-sites-c-net.aspx )
iLand で仮想サーバーを使用しているため、GoDaddy を iLand のネームサーバーにポイントするだけで済みます。
可能であれば、新しいクライアント プロセス全体を自動化したいと考えています。これを実現するには、データベースを作成し (おそらくテナントごとに 1 つのデータベースを作成します)、グローバル クライアント/テナント テーブルにデータを入力し、新しく作成したデータベースに管理者ユーザー アカウントとサブスクリプションの詳細を作成し、アプローチに応じてサブドメインを作成する必要があります。何か不足していますか?
前もって感謝します。