dev*_*ero 6 c# asp.net iis asp.net-mvc
我有一个多租户应用程序,管理员可以从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();
}
Run Code Online (Sandbox Code Playgroud)
对于 IIS 7 及更高版本,有一个 API https://blogs.msdn.microsoft.com/carlosag/2006/04/17/microsoft-web-administration-in-iis-7/
\n\n从链接:
\n\nServerManager iisManager = new ServerManager();\niisManager.Sites[\xe2\x80\x9cNewSite\xe2\x80\x9d].Applications.Add(\xe2\x80\x9c/Sales\xe2\x80\x9d, \xe2\x80\x9cd:\\\\MyApp\xe2\x80\x9d);\niisManager.Update(); \nRun Code Online (Sandbox Code Playgroud)\n\n这应该能让你上路
\n