【问题标题】:Domain Hosting on IISIIS 上的域托管
【发布时间】:2023-03-30 15:42:01
【问题描述】:

我已经为 IIS 上的主机域编写了一个 WCF 服务,并且我已经将该 WCF 服务托管到了 IIS。我的代码是

 public bool HostWebsiteToIIS(string DomainName)
        {
             bool Hosted = false;
            try
            {
                string DomainNameRecord = "";

                if (DomainName.ToLower().Contains(".com"))
                {
                    DomainNameRecord = "www." + DomainName.ToLower();

                }
                else{
                     DomainNameRecord = "www." + DomainName.ToLower()+".com";

                }
                using (ServerManager manager = ServerManager.OpenRemote("Host"))
                {
                    manager.Sites["Default Web Site"].Bindings.Add("*:80:" + DomainNameRecord, "http");
                    manager.CommitChanges();

                    Hosted = true;
                }
                return Hosted;
            }
            catch
            {
                return Hosted;
            }
        }

这是我在 WCF 中使用的方法,但这是抛出异常

权限不足,无法读取配置文件

我尝试了以下步骤

在 Windows 资源管理器中,找到与网站关联的 web.config 文件。 右键单击 web.config 文件 单击属性。 单击安全选项卡,然后单击编辑。 单击添加。 在“输入要选择的对象名称”框中,键入 computername\IIS_IUSRS,单击“检查名称”,然后单击“确定”。 注意 Computername 是计算机名称的占位符。 单击以选中读取复选框,然后单击确定。 在“Web.config 属性”对话框中,单击“确定”。

但这对我不起作用 请帮忙

【问题讨论】:

    标签: c# asp.net wcf iis


    【解决方案1】:

    您使用的Microsoft.Web.Administration API 要求代码在目标 IIS 计算机上具有管理员权限的帐户下运行。

    在您的情况下,错误消息仅表明执行帐户没有此类权限。它所指的文件是IIS的applicationHost.config,而不是你的web.config。更改该文件的 NTFS 权限是没有用的。

    【讨论】:

    • 嘿 Lex,我只用管理员凭据打开了 VS 和 IIS,仍然有同样的异常
    • @Aakash 然后将“Host”替换为您要管理的 IIS 服务器的有效主机名或 IP 地址。
    • “主机”只是我在这里给出的示例,但我的 IP 地址正确,这个问题是因为 WCF 服务吗?
    • @Aakash 池标识是什么?您是否使用自己的帐户,即该 IIS 服务器上的管理员?在 IIS 上托管代码时,以管理员身份运行 VS 是没有用的。
    • 您能否给我建议我应该如何处理“由于权限不足而无法读取配置文件”。我的池标识是 ApplicationPoolIdentity ,集成的托管管道
    【解决方案2】:

    单击应用程序池->右键单击托管的WCF服务->转到高级设置->在进程中选择身份->将“应用程序池”更改为“本地系统”即可。

    【讨论】:

    • 您应该注意的最后一件事是,在本地系统下运行 Web 应用程序可能会带来安全风险。请咨询安全专家,了解您需要采取哪些措施以最大程度地减少影响。 (复制它以警告读者)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-06
    • 2023-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-01
    相关资源
    最近更新 更多