我正在尝试在XP机器上运行ASP.NET 2.0应用程序。据我所知,一切都配置正确。但是,我收到以下消息:
服务器应用程序不可用
每次在应用程序事件日志中出现两个事件:
aspnet_wp.exe(PID:3352)已停止 出乎意料。
执行请求失败,因为 ASP.NET进程标识没有 拥有对全局的读权限 程序集缓存。错误:0x80070005 访问被拒绝。
以前,ASP.NET应用程序在这台机器上运行良好。
我尝试了以下步骤,没有运气:
我不确定我还能做什么!
使用Process Monitor直接导致了我的问题。非常感谢Mun的提示。
这是一个相当模糊的问题:我之前使用过程序集绑定日志查看器(fuslogvw.exe)并将其设置为使用自定义路径选项记录所有绑定到磁盘。但是,ASPNET帐户没有该自定义路径的权限。因此,恢复使用默认路径解决了问题。授予ASPNET帐户的自定义路径的读/写权限也是有效的,禁用绑定日志也是如此。
答案 0 :(得分:2)
以下是必要的权限:http://msdn.microsoft.com/en-us/library/kwzs111e.aspx
更多信息:http://support.microsoft.com/default.aspx?kbid=811320
你运行的命令应该足够了,但是值得检查:)
答案 1 :(得分:2)
您可能还会发现Process Monitor对解决这些类型的问题非常有用。如果您设置过滤器以显示包含aspnet_wp.exe的所有活动,它应该显示它尝试访问的文件,允许您相应地更新权限。
答案 2 :(得分:1)
我知道现在回答这个已经太晚了。我今天也有同样的问题。我在命令提示符下运行了以下内容并解决了问题
aspnet_regiis -ga machinename\ASPNET
答案 3 :(得分:0)
我们曾经遇到过ASP.NET的这个问题,因为当Visual Studio创建其程序集的临时副本时,索引服务会开始扫描它们是否有病毒,这有时会导致“拒绝访问”消息,因为调试器会是试图打开共享文件。告诉索引服务不索引临时程序集目录解决了这个问题。
答案 4 :(得分:0)
这解决了我的问题,我想分享:
如果这是针对IIS 5.1(基本上是过时的IIS版本),请右键单击您的虚拟目录(来自inetmgr)并转到“所有任务”> '权限向导' 选择“从模板中选择新安全设置”选项,然后选择“公共网站”。