【问题标题】:IIS with multiple domains on one single web application在一个 Web 应用程序上具有多个域的 IIS
【发布时间】:2012-12-23 11:55:55
【问题描述】:

我正在 IIS 上使用 asp.net 构建一个 Web 应用程序。概念如下。

客户购买了一个域,然后从 20-30 个现成的模板中选择一个模板。

现在应用程序驻留在www.mywebappblabla.com/usersites

用户域是www.myowndomain.com,它指向www.mywebappblabla.com/usersites,然后我们从数据库中跟踪url,然后网站与用户的预定义模板一起显示。

因此,如果有域www.myotherdomain.com 的其他用户将再次指向www.mywebappblabla.com/usersites,然后根据数据库中存储的数据向他显示不同的模板和不同的页面内容。

我的问题是这个系统可能被 3000 -5000 个用户使用。那么这是正确的方法吗?或者我们应该为每个站点创建一个单独的文件夹和单独的 Db?

我们希望在更短的时间内配置系统。例如。用户发送带有内容的word文件和要使用的模板。我们应该能够让网站在 2-3 小时内上线。

应该是什么方法。会不会影响网站性能。

感谢和问候

VIpin

【问题讨论】:

    标签: .net iis


    【解决方案1】:

    大多数网站对这类事情使用子域方法;例如,我的“网站”可能位于 joshuashanemartin.host.com,而您的“网站”可能位于 yourusername.host.com(Wordpress、Google 协作平台和其他网站都使用这种方法)。

    基本上,您可以使用包含以下表格的单个数据库:

    • 客户
    • 网站

    一个客户可以拥有多个网站,每个网站都有很多页面。您可以在站点甚至页面中定义模板。每个“页面”对象都有一个“内容”属性,它可以是 HTML 或某种标记语言(就像我写答案时 StackOverflow 使用的那样)。

    您是否采用子域方法(例如 customername.host.com)或您的方法(例如 www.host.com/usersites/customername)取决于您。最后,您只需从单个数据库中加载不同的内容,并使用 URL 来确定您正在加载谁的数据。

    【讨论】:

    • 感谢约书亚的回复。该方法的问题是,企业不会喜欢他们在子域上的网站。因此,基本上这些是受组织监管以拥有特定网站的企业。他们将需要新的域名来开展自己的业务。
    【解决方案2】:

    这种方法很好。显然很多人使用子域代替,但主机同样合适。

    您需要在 IIS 中设置绑定以允许该站点在端口 80/443 上的所有请求 *。而且您显然希望存储他们的域并根据域将它们路由到正确的模板。您也可以设置它,以便未注册的域获得您网站的友好版本或友好的错误消息。

    就技术帮助而言,实施时提出更具体的问题会产生更好的结果。如果您不熟悉 asp.net,您应该查看 HttpContext。这将让您检查请求的域。这应该给你一个开始。

    【讨论】:

    • 谢谢,我会调查的。我主要担心的是这个APP是否基于3层Archi。在 C# 中支持超过 1000-2000 个域请求?
    猜你喜欢
    • 1970-01-01
    • 2017-02-10
    • 1970-01-01
    • 1970-01-01
    • 2014-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多