IIS http 500内部服务器错误

作者 FarLee 2010年3月11日 13:27:28   ‖浏览(20,645)

昨天海宁告诉我说你的博客不能访问了,打开网址一看,果然,又是HTTP 500 错误。网页在ie浏览器上提示:

网页无法显示
您要访问的网页存在问题,因此无法显示。
请尝试下列操作:
打开http://127.0.0.1主页,寻找指向所需信息的链接。
单击刷新按钮,或者以后重试。
http 500 - 内部服务器错误
internet 信息服务
(HTTP 500 - Internal Server Error)

什么是HTTP 500错误?

500也是属于HTTP状态码中的一种。前面在谈到WordPress SEO优化404页面301重定向时提到过301和404 HTTP 状态码。

  • HTTP Header 100系列表示临时响应并需要请求者执行操作才能继续的状态代码;
  • HTTP 200 (2**系列)表示服务器已成功处理了请求的状态代码,成功返回的网页一般都返回的是200状态码;
  • HTTP 301 (3**系列)状态码都和重定向有关,比如301表示永久重定向(转向),而302则表示临时性重定向(转向);
  • HTTP 404 (4**系列)状态码表示页面请求出错,服务器对请求的处理出错,如返回404状态码则表示请求的网页在服务器中找不到,不存在此页面;
  • HTTP 500 (5**系列)状态码表示内部服务器出错,而不是请求过程出错。

导致HTTP-500内部服务器出错原因是什么?

导致出现http 500错误的原因网上有人归纳了很多,最经常碰到的原因可能是网站服务器在同一时间内的收到的HTTP 请求过多,访问量过大造成服务器压力过大,IIS 服务器无法及时响应,就会报http 500错误。

IIS下出现HTTP 500内部服务器错误的另外一个重要原因是由于iwam账号的密码错误,iwam账号在active directory、iis metabase数据库和com+应用程序中的密码没有同步关联。关于iwam账号大家可以去google 搜索看看,这里不再复制过来了。其他500错误的原因包括参数化时的取值问题;更换了应用服务器(如tomcat/websphere/jboss等)但运行的脚本还是原来的,很可能报HTTP500错误;Windows xp2 与IIS组件不兼容;系统开发程序问题如有些指针问题没有处理好;请求操作中需要向数据库中插入数据在大数据量的情况下导致数据库中表空间已满,或缓冲池较小无法满足数据的存取有可能导致HTTP 500错误。

如何解决HTTP 500错误?

当出现内部服务器500错误时,浏览器会返回给用户一个友好的错误提示页面,也就是开头我们提到的这段友好错误提示。要解决http 500错误问题,首先要查到出错的具体原因。按照这样的方法步骤来操作:

首先在浏览器中设置取消友好提示,以获取详细的500错误信息:打开浏览器–选择工具–internet选项–高级–将\”显示http友好错误提示\”的复选框取消选择,这样就可以获得具体的错误提示了。根据500 出错的具体原因,再进行相应调试解决问题。

如果是IIS 运行环境测试时,由于iwam账号在active directory、iis metabase数据库和com+应用程序中密码不统一导致HTTP 500 – 内部服务器错误,那就要人工同步iwam账号在active directory、iis metabase数据库和com+应用程序中的密码,使之保持一致(虚拟主机没有IIS 服务器相关权限的就不能操作了哦,本地测试出现此问题的时候可以这样进行)。在网上找了一段同步密码的简单方法供大家参考:

  • 1. 运行:regsvr32 %windir%/system32/vbscript.dll  (微软只提供了管理脚本adsutil.vbs,位于C:\inetpub\adminscripts子目录下,因此首先要注册vbscript.dll)
  • 2. 运行:msdtc -resetlog (msdtc.exe 是微软分布式传输协调程序,该服务用于管理多个服务器),控制面板->管理工具->找到“组件服务”->“计算机”->“我的电脑”->“COM+应用程序”->“IIS Out-Of-Process Pooled Applications”
  • 3. 重新安装IIS.

HTTP 500 错误 后话

博客页面出现了http 500 错误后,我没有采用任何解决方法,再次刷新,博客又可以正常访问了,这应该是瞬时的http访问请求过多造成的。最大的原因是虚拟主机IIS连接数受限所致,空间商说的不限制流量也没什么用的。不过也可能是IIS组件重启或网站程序有问题。

原以为问题就这样结束了,但是郁闷的是,1个小时以后,远方博客网站就完全打不开了。登录虚拟主机空间管理后台看到通知才知道,原来又是A记录绑定的ip地址出现问题了:“通知:机房ip为*.**.*.*因网络原因中断,正在处理中,稍后恢复敬请谅解。 2010-3-10”。 到晚上12点临睡前还是打不开。晕阿,服务器这么不稳定,SEO 优化了又有什么用阿?建议大家在找虚拟主机的时候,一定要慎重,并挑选好适合wordpress博客的空间,IIS 老不稳定,最好都选用Linux的服务器吧,一个月不重启性能都还能维持得很好。

一直到今天早上上班,输入网址终于可以访问博客了。但是静态化的url地址有问题,url重写的页面显示的也是 iis 默认的404页面。进入后台将ISAPI筛选器重新删除再添加就可以了。或者让空间商客服帮忙同步一下就可以了。


“IIS http 500内部服务器错误”文章评论(2)

  1. 我的WP博客也经常提示http 500错误,向空间商反映,说是程序问题,事实上我根本没该过程序,主题也是默认……

Trackbacks/Pingbacks

  1. Wordpress教程-模板主题/插件/函数 - 远方博客

来说兩句