我有一个多租户应用程序,管理员可以从GUI添加新客户。这将设置一个客户特定的站点,其中url将类似于:customerName.mydomain.com。目前,我必须进入IIS,将该URL添加到我的站点的绑定中。我怎样才能从C#代码中做到这一点?
IIS版本为7或更高版本。
从下面的回答我得到以下结论:
您必须将文件夹“C:\ Windows \ System32 \ inetsrv \ config \”的写访问权授予网站运行的用户
var server = new ServerManager();
var site = server.Sites.FirstOrDefault(a => a.Name.Contains("mydomain"));
if (site != null)
{
site.Bindings.Add($"*:80:{customer}.mydomain.com", "http");
server.CommitChanges();
}
答案 0 :(得分:4)
对于IIS 7及更高版本,有一个API https://blogs.msdn.microsoft.com/carlosag/2006/04/17/microsoft-web-administration-in-iis-7/
从链接:
ServerManager iisManager = new ServerManager();
iisManager.Sites[“NewSite”].Applications.Add(“/Sales”, “d:\\MyApp”);
iisManager.Update();
这应该让你在路上