设为首页 收藏本站
查看: 681|回复: 0

[经验分享] IIS发布后500错误

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2017-2-11 13:35:22 | 显示全部楼层 |阅读模式
  [机器环境]
  DB : Sql server 2000
  IDE : Microsoft visual studio 2003, 2005
  OS : Windows XP
  [问题现象]
  安装完IIS,发布好应用后,浏览该应用,浏览器报“Page 500错误”。打开IDE,F5启动调试,弹出窗口提示:“MMC检测到此管理单元发生一个错误,建议关闭并重新启动MMC”,点确定后,提示页面500错误。
  [尝试]
  网上有相关帖子:
  http://www.wenda.com.cn/tech/view.php?ID=1882
  http://www.tzlink.com/bbs/thread-362-1-1.html
  原因说起来,挺像回事的:
  IWAM账号建立后被Active Directory、IIS metabase数据库和COM+应用程序三方共同使用,账号密码被三方分别保存,并由操作系统负责这三方保存的IWAM密码的同步工作。但系统的对IWAM账号的密码同步工作有时会失败,使三方IWAM账号所用密码不统一。当IIS或COM+应用程序使用错误IWAM的密码登录系统,启动IIS Out-Of-Process Pooled Applications时,系统会因密码错误而拒绝这一请求,导致IIS Out-Of-Process Pooled Applications启动失败,也就是我们在ID10004错误事件中看到的
  “不能运行服务器{3D14228D-FBE1-11D0-995D-00C04FD919C1} ”(这里{3D14228D-FBE1-11D0-995D-00C04FD919C1} 是IIS Out-Of-Process Pooled Applications的KEY),不能转入IIS5应用程序,HTTP 500内部错误就这样产生了
  照着帖子中的步骤,我将MSDTC的服务重新安装了一遍,没有效果;又将IIS Metabase与IWAM_MYSERVER的账户重新设置,并同步了一遍,问题仍然存在。
  尝试步骤如下:
  [重新安装MSDTC服务]
  1. 打开DOS命令窗口,输入"msdtc -uninstall"回车,卸载MSDTC服务。
  2. 输入命令“msdtc -install”回车,安装服务。
  3. 输入命令“msdtc -resetlog”回车,重置日志。
  4. 输入命令“net start msdtc”回车,启动服务。
  3. 从控制面板->管理工具中,打开组件服务,依次展开:组件服务->计算机->我的电脑,右键单击“我的电脑”,选择属性
  4. 在弹出窗口中选择MSDTC选项卡,点击“安全性配置”,勾上“网络DTC访问”,“允许远程客户端”,“允许远程管理”,“允许入站”,“允许出站”,“不要求进行验证”,“启动事务Internet协议(TIP)事务”,“启动XA事务”,点击确定。
  5. MSDTC服务重启,并成功。
  [同步IIS账户与IWAM_MYSERVER账户的密码]
  1. 右键点击桌面“我的电脑”(非快捷方式),选择“管理(G)”,弹出窗口中,展开本地用户组和组,在用户中找到IWAM_MYSERVER账户(实际名字为IWAM_你的机器名),右键点击该用户,选择设置密码,这里设置为“123456”.
  2. 打开DOS命令窗口,使用CD命令,进入c:/inetpub/adminscripts/目录
  3. 目录下输入命令“adsutil.vbs set w3svc/wamuserpass "1234456"”即可同步两个账户的密码,如果系统提示:
  wamuserpass: (string) "******"
  说明同步成功。
  [问题解决]
  我列出尝试的目的在于,我并不确定尝试中的两个步骤对于解决问题有没有帮助,同时也至少说明了一个思路。
  我是在作出以下的尝试后,解决问题的:
  1. 单击 开始 , 单击 运行 , 类型 mmc然后单击 确定 。
2. 在 文件 菜单上, 单击 " 添加/删除管理单元 。
3. 在 添加/删除管理 - 中 对话框中, 单击 添加 。
4. 在 可用的独立管理单元 列表, 选择 WMI 控制 , 并单击 确定 。
5. 打开CMD,进入 C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322 输入 “aspnet_regiis”

  做到前4个步骤时,问题依然存在,但当我注册完执行IIS版本注册命令后,问题得到解决。猜想,可能是机器安装了两个版本的.net framwork,导致应用所使用的framwork与当前注册的版本不一致所造成的。
  [一些延伸]
   从以往的经验来看,我确实在发布应用的时候,常碰到:当发布了两个基于不同.net framwork版本的应用,并使用了默认的应用池(DefaultAppPool)时,就会只要一个应用生效,另一个应用就失效的问题。
   那种情况,我们在发布的时候,尽量让不同版本的应用使用不同的应用池,即可。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-340680-1-1.html 上篇帖子: 令人警惕的iis路径 下篇帖子: IIS 无法显示图片
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表