当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > asp.net“服务器应用程序不可用” 解决方法

ASP.NET
C#中使Datawindow.Net组件处理数据
在.net开发中几个重要的认识误区(1)
WML教程11:文本框控件(Input)
WML教程6:动作和链接
在WEB自定义控件中实现事件及自动保存值
WML教程14:WML 文本处理
表单启动太慢时显示一个等待图标(类似Windows下的时间沙漏)
ADO.NET学习笔记(二)
使用HttpContext中的User属性来实现用户身份验证之用户验证票篇
由DataGrid翻页所导致的诸多问题的解决方案
动态加载类的原理:元数据的使用
用C#实现Des加密和解密
快速对图片进行滤光处理
可以代替窗体Refresh方法的函数
『原创』适合初学的简单3D碰撞检测初探(对于3D编程初学人员)
《Essential .Net》读书笔记 - Chapter 3
Lion.Web.WebHtmlEditor 1.0 Hack 攻略
数据库事务处理的另外一种方法
[WSE]Web Service—后台侦听服务通过WSE2.0建立订阅/发布关系
给windows服务添加描述

ASP.NET 中的 asp.net“服务器应用程序不可用” 解决方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 136 ::
收藏到网摘: n/a

服务器应用程序不可用 您试图在此 Web 服务器上访问的 Web 应用程序当前不可用。请点击 Web 浏览器中的“刷新”按钮重试您的请求。 管理员注意事项: 详述此特定请求失败原因的错误消息可在 Web 服务器的系统事件日志中找到。请检查此日志项以查明导致该错误发生的原因。 引起这个的原因大概是现安装了.Net Framework后装的IIS导致.Net没有在IIS里注册。
在网上找了很久都是说从.net命令行工具里运行aspnet_regIIS /i就可以了(或者在类似下面的目录:C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe -i),但是自己试了很多次都不行,后来发现还是要先卸载再安装,重新创建为应用程序才行,具体如下:
从.net命令行工具里运行 aspnet_regIIS /u 卸载,再aspnet_regIIS /i安装
然后重启IIS ,删除“默认应用程序”,然后将站点重新创建为应用程序。
另外,还有可能是ASPNET账户没有IIS所指定服务器目录的权限。在资源管理器中找到“工具-文件夹选项-查看-使用简单文件夹共享(推荐)”,把前面的勾去掉,然后在服务器指定目录上点右键,属性-安全-添加-高级-立即查找,把ASPNET这个账户添加进去,给它指定完全访问的权限。这样做了以后就会发现没有了那个错误,不过如果访问数据库可能有会提示ASPNET这个账户没有权限访问数据库。这个提示就清楚多了,把该账户在数据库中加入相应的权限就可以了。

解决方法一 重新注册.Net 2.0:
C:WINDOWSMicrosoft.NetFrameworkv2.0.50727as.Net_regiis.exe –i
解决方法二 新建应用程序池:
新建应用程序池的步骤
1. 单击“开始”,指向“程序”,然后单击“控制面板”。
2. 双击“管理工具”,然后双击“Inte.Net 信息服务 (IIS)”。
3. 右键单击“应用程序池”,指向“新建”,然后单击“应用程序池”。
4. 在“应用程序池 ID”文本框中键入 AppPool1。
5. 单击“确定”。
将应用程序分配到应用程序池
1. 单击“开始”,指向“程序”,然后单击“控制面板”。
2. 双击“管理工具”,然后双击“Inte.Net 信息服务 (IIS)”。
3. 双击“Web 站点”。
4. 双击“默认 Web 站点”。
5. 右键单击“DebugApp1”,然后单击“属性”。
6. 在“主目录”标签中的“应用程序池”列表框中选择“AppPool1”,然后单击“确定”。
解决方法三,修改网站目录所在文件夹的访问权限:
找到当前网站目录->右键->属性->安全->添加->高级->立即查找->选择 Users 用户 ->确定->确定
解决办法:
1、新建一个应用程序池,点属性,标识,选择应用程序池的安全性帐户,本地系统,OK!
2、WEB文件夹属性中的权限添加NetWork Service帐号权限。
至此,网站可以正常运行.NET程序了