首页 > 开发 > .Net > 正文

asp.net服务器上几种常见异常的解决方案.

2020-04-24 22:12:46
字体:
来源:转载
供稿:网友
如下

(1)配置Asp.net站点ISS报出:服务器应用程序不可用.具体异常信息如下:

 服务器应用程序不可用
您试图在此 Web 服务器上访问的 Web 应用程序当前不可用。请点击 Web 浏览器中的“刷新”按钮重试您的请求。
管理员注意事项: 详述此特定请求失败原因的错误信息可在 Web 服务器的系统事件日志中找到。请检查此日志项以查明导致该错误发生的原因。

我检查ISS上其他的配置.发现全部都是Asp编写的网站.属性中查看运行的环境竟是Asp.net Framework 1.1版本. 我修改成了.NET FrameWork2.0版本.结果出现这个错误提示.

(1)一般情况下.NET2.0和.NET1.1在程序池公用时就会出现"服务器应用程序不可用"这个异常.其实是进程池调用冲突的问题,如果访问的两个应用程序,分别是2.0 和1.1, 而且他们共用一个进程池,
IIS 无法同时将其解析2种版本,就会出现如上的错误.

解决问题办法:修改其中之一的进程池, 如把 2.0的应用程序的进程池改为 ASP.NET 2.0 . 即可

(2)方法二:重新注册IIS, NET/Framework/v2.0.50727里的aspnet_regiis.exe 运行它,重新注册一下.net aspnet_regiis.exe -u 先卸载 aspnet_regiis.exe -i 重新安装 有时候重启一下服务器就好了.

有时按照上面的两种方法配置.还会报出同样的异常.接着查看一下系统事件日志.来看看报出异常具体信息.这是在11-10日10点这个时段服务器上系统事件日志:

其中详细信息:

 

1:由于无法创建应用程序域,因此未能执行请求。错误: 0x80070005 拒绝访问。
2:未能初始化 AppDomain:/LM/W3SVC/1635210705/Root    Exception: System.IO.FileLoadException
Message: 未能加载文件或程序集“System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。拒绝访问 

谷歌一下找到一个合理的解决方案:

1:安装2.0之后,在IIS的虚拟目录的属性设置中会多出一个ASP.NET标签,在那里边把运行时调整为2.0,默认使用的是1.1的运行时。  

2:这个是权限问题,首先检查应用程序池的属性,看看它是以什么用户身份运行的,一般是NETWORK SERVICE    然后确保这个用户对.NET Framework 2.0的目录有访问权限,事实上应该是有的。目录是systemroot:/Windows/Microsoft.NET/Frameworks /2.0.xxxx .如果以上两条都对,很不幸,你遇到了一个很奇怪的问题,我上次是把应用程序池的用户身份改成本地系统来运行的。按照第二种解决方案配置: 把运行池的访问用户设置为"本地系统", 然后运行程序, 错误没在出现, 成功解决,

当然现在站点有的设计Silverlight集成开发用的.NET环境是3.5版本的.安装后.net FrameWork3.5SP1后.在属性中Asp.net一栏中依然只是1.1和2.0. 有人就问为什么没有3.5?

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表