“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED)) 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.UnauthorizedAccessException: 拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED)) ASP.NET 未被授权访问所请求的资源。请考虑授予 ASP.NET 请求标识访问此资源的权限。ASP.NET 有一个在应用程序没有模拟时使用的基进程标识(通常,在 IIS 5 上为 {MACHINE}\ASPNET,在 IIS 6 上为网络服务)。如果应用程序正在通过 <identity impersonate="true"/> 模拟,则标识将为匿名用户(通常为 IUSR_MACHINENAME)或经过身份验证的请求用户。 要将 ASP.NET 访问权限授予某个文件,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”添加适当的用户或组。突出显示 ASP.NET 帐户,选中所需访问权限对应的框。源错误: 执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。  堆栈跟踪: 
[UnauthorizedAccessException: 拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED))][TargetInvocationException: 调用的目标发生了异常。]
   System.DirectoryServices.DirectoryEntry.Invoke(String methodName, Object[] args) +228
   v9.IIShelp.IISHelper.CreateNewIIsWebServer(String webServerName, String path, Int32 port, String domain) +908
   _Default.CreatSite_Click(Object sender, EventArgs e) +53
   System.Web.UI.WebControls.Button.OnClick(EventArgs e) +105
   System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +107
   System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5102
 

解决方案 »

  1.   

    我是想实现当用户申请的时候。我就给他在IIS下创建一个网站。我在.net调试的时候。可以的。。但是发布网站后。就不能创建了。。
    在网上也找了很多同样错误的。。不过没有看到IIS下动态创建网站出现这样错误的
    也试了各种解决方案。始终没解决(也许是我没操作对。天呐。我快要疯了)
    这问题困扰我一天了。。大虾们。。来帮帮我吧。。
      

  2.   

    是不是没把你的网址写入可信网站或是本地Intranet站点?
      

  3.   

    设置匿名访问许可, 禁用iis里windows认证对话框
    再就是是不是忘记设置网站的默认文档了 ?
      

  4.   

    我的默认网站的目录指向就是  我要用来动态创建IIS网站的页面。。iis里windows认证对话框 -在哪?不清楚。
      

  5.   

    我没做过这个。
    是不是文件夹权限问题?还有,前段时间重装后,项目不能访问,是因为没设local为可信网站或是本地Intranet站点。它显示的错误也是帐号没有限权的字样。
      

  6.   

    我在百度,google搜索。。有好多人出现这个异常。。都是因为某个文件不能访问。而且也是有提示说哪个文件。。我这个根本一点思路都没有。因为我是利用程序 在IIS上建网站。然后绑定主机头。。不知道是不是   把网站建在IIS的某个目录。。而权限不够呢。。很郁闷。。已经郁闷一天了。。思路都已经乱了。。试了很多方法。。
      

  7.   

    我在.net调试的时候。可以的
    --------------------------------
    用.NET调试是以登陆帐号进行访问。所以没有读写权限的问题。。
    而IIS建的虚拟目录是以来宾帐户进行访问。。所以涉及到权限问题。。
    -------------------------------------
    可以把建在IIS的某个目录的来宾帐户的读写权限钩上。。或者用用户模拟的方式来解决
      

  8.   

    1.看一下文件夹以及文件夹里面的权限,添加asp.net访问权限
    2.IIS上的匿名访问要勾上
      

  9.   

    我把我的步骤一步步说明吧。。大家帮我看看问题出在哪里。。
    环境是:xp sp2, iis5.1
    网站名称:cooolbin(用户名)
    主机头:cooolbin.g.com(二级域名)
    路径:d:\aaa\  (测试的目录可以手动设置权限,如果根据用户名建的文件夹,要怎么设置权限呢?)
    端口:80 提交后执行-》
    IISHelper.CreateNewIIsWebServer(cooolbin, @"d:\aaa\", 80,cooolbin.g.com);IIS类:
            public static void CreateNewIIsWebServer(string webServerName, string path, int port,string domain)
            {
                int siteID = GetWebSiteInfo(port);
                using (DirectoryEntry site = (DirectoryEntry)iisDE.Invoke("Create", "IIsWebServer", siteID))
                {
                    site.Invoke("Put", "ServerComment", webServerName);
                    site.Invoke("Put", "KeyType", "IIsWebServer");
                    site.Invoke("Put", "ServerBindings", ":" + port.ToString() + ":"+domain);//ip:port:domain
                    site.Invoke("Put", "ServerState", 2);
                    site.Invoke("Put", "FrontPageWeb", 1);
                    site.Invoke("Put", "DefaultDoc", "index.aspx");
                    site.Invoke("Put", "SecureBindings", ":443:");
                    site.Invoke("Put", "ServerAutoStart", 1);
                    site.Invoke("Put", "ServerSize", 1);
                    site.Invoke("SetInfo");
                    using (DirectoryEntry siteVDir = site.Children.Add("Root", "IISWebVirtualDir"))
                    {
                        siteVDir.Properties["AppIsolated"][0] = 2;
                        siteVDir.Properties["Path"][0] = path;
                        siteVDir.Properties["AccessFlags"][0] = 513;
                        siteVDir.Properties["FrontPageWeb"][0] = 1;
                        //siteVDir.Properties["AppRoot"][0] = "LM/W3SVC/" + siteID + "/"+webServerName;
                        siteVDir.Properties["AppFriendlyName"][0] = webServerName;
                        siteVDir.Invoke("AppCreate", true);
                        siteVDir.CommitChanges();
                    }
                    site.CommitChanges();
                } }我把目录aaa的安全设置里面 添加加了  Administrator,ASP.NET Machine Account,权限也全都加上了
    还有那个everyone的仅限也全加了。。按理说。我这样在IIS建好网站。并指向到那个目录aaa。问题应该就可以解决了。但还是出错了。郁闷。
    大家帮我解决了这个问题。我再加100分犒劳大伙。
      

  10.   


    <authentication mode="Windows"/>本机调试的时候在config加这句就没有问题
     <identity impersonate="true"/>在服务器上。就要用这个才可以创建。。
    <!--<identity impersonate="true" userName="Administrator" password="***"/> 
      

  11.   

    你是要用代码在iis上创建网站?
      

  12.   

    http://topic.csdn.net/u/20080707/10/9e853e0a-1df0-4476-9e2f-8154012b0674.html
      

  13.   

    打开服务的 asp.net start service 服务