解决HTTP/1.1 500 Internal Server Error的几种常见方法
最近使用.Net 2003创建项目的时候 总是出现 Http 1.1 500 Inetnal Server Error很是苦恼 具体原因还是因为前阵子用的是Visual2005 可是最近老师要求必须用2003做项目 所以自从那次卸载2005之后 在装2003 就没好用过 去baidu和google搜索了很久 试过很多有同样问题朋友所给予的解决方案 也没有解决问题 试过重新安装Framework与IIS 仍然无效 每个人出现Http 1.1 500 Inetnal Server Error这个错误的时候 所导致的原因都不同 所以不能够盲目的在网上使用 别人的解决方法 应该先在IE选项里面 高级选项卡中 有一项:"显示友好的HTTP错误消息" 去掉在看看所提示的错误是什么下面有几种常见的错误 规整一下(这个是copy来的):
错误的行为:
在VS.net 2003中创建一项ASP.NET Web 应用程序,此时发生错误:尝试创建Web项目或打开位于URL"http://localhost/WebApplication1"的Web项目时,Web服务器报告了以下错误。"HTTP/1.1 500 Internal Server Error"。
错误分析:
1、看下IIS 的Web服务启动没有(Windows 2000、IIS 5.0);
2、看下IIS 的Web服务的 "属性" 中的 "目录安全性"子项,此时点"编辑",看下里面用匿名访问IIS的用户是什么,和本地用户组的用户是否保持一致;(如: 我的机器上的IIS匿名用户名是:IUSR_ACCPSTUD。那么看下本地用户组的用户中是否也有同样的一个用户,并保证是激活的。)
3、进计算机管理中,使用事件查看查看器(此时由VS.NET 2003 创建项目时引发的错误事件信息)
①.选"应用程序"选项,查看来源于ASP.NET 1.1.43220 的错误事件信息.得到如下信息:
"aspnet_wp.exe could not be started. The error code for the failure is 80004005. This error can be caused when the worker process account has insufficient rights to read the .NET Framework files. Please ensure that the .NET Framework is correctly installed and that the ACLs on the installation directory allow access to the configured account. " 我分析了一下,应该是.NET Framework 中的ASP.NET 组件出错,因为 "aspnet_wp.exe could not be started."(线程无法被创建)。
②.另一个来源于ASP.NET 1.1.43220 的错误事件信息.得到如下信息:
"aspnet_wp.exe could not be launched because the username and/or password supplied in the processModel section of the config file are invalid. " 在系统事件中得到一致的错误信息: "该服务器因为错误 登录失败: 禁用当前的帐户。而无法登录至 Windows NT 帐号 'IUSR_machine(machine为计算机名称)'。此数据为错误码。"
综合上述信息得出:此错误是由于IIS 与 vs.net2003 之间互相访问的权限问题及ASP.NET组件发生错误.
4、随便写个ASP页面或者HTML页面,然后在IIS WEB服务中新建虚拟目录。建好后就打开网页,此时我的机器上的页面出现了乱码错误,查看源文件: "服务器应用程序不可用。您试图在此 Web 服务器上访问的 Web 应用程序当前不可用。请点击Web 浏览器中的“刷新”按钮重试您的请求。管理员注意事项:详述此特定请求失败原因的错误信息可在 Web 服务器的系统事件日志中找到。 请检查此日志项以查明导致该错误发生的原因。"
此时错误提示和日志事件联系上来了。我们去查看下日志事件的错误描述。查看后也是 3、① 和3、②所描述的一样的错误。
5、综上所分析和遇到的错误,以及在MSDN和上网查了下资料,还得到一个问题就是ASPNET用户必须是激活状态。
解决方案: ①、运行VS.net 2003命令提示工具:aspnet_regiis -i (重新安装ASP.NET 组件);
②、重新启动一下IIS 或者在"运行"中输入:iisreset;
③、激活上面所描述的前2个帐户 ASPNET、IUSR_machine("machine"为计算机名称),不要设置密码,确认在IIS的安全设置(匿名访问)里面找到"IUSR_machine"用户,并且是由IIS控制密码的
以上的几种方法我用了都没好用 因为是先装的2005然后卸载有安装的2003最后发现 IIS中 Default Web Site Properties的 ASP.Net选项卡中 ASP.Net Version为1.1可是 路径 确实2.0的路径 最后的解决方法就是 再安装下Framework2.0 仍然不好用 再一次看看ASP.Net Version 还是1.1更改为2.0之后 Bingo~! 希望能够帮助有同样问题的朋友们
页:
[1]