目前大多数的服务器搭建的2003X64的系统+IIS6.0,但是大多数部署的IIS6.0又是32位的,所以在实际运用中就有各种各样的情况,我这里稍作总结。
总:
出现问题,首先冷静
1.刷新IIS,查看【应用程序池】选项是否存在。如果不存在,在【网站】右键【属性】-【服务】选项卡,如下图
QQ图片20131212141312" border="0" alt="QQ图片20131212141312" src="/Upload/Images/2013121216/E9DB330D430756E8.jpg" width="244" height="166">
将【以IIS5.0隔离模式运行WWW服务】的选项打钩去掉。
2.查看各个网站及所属的虚拟目录【属性】--单击“主目录”选项卡,确认您正在指派的目录或虚拟目录的“应用程序名”是否已被填写。如果“应用程序名”框尚未被填写,请单击“创建”,然后输入名称。
PS:查看【事件查看器】-【应用程序】的日志
适用问题:
#1)服务浏览出现: service unavailable #2)服务浏览出现:当前页找不到 #3)在事件查看器-应用程序中报错:在同一 IIS 进程中不可能运行两个不同的 ASP.NET 版本…… #4)服务浏览出现:当前服务不可用
#5)【网站】带有红色标记,网站停止并无法启动。
#6)服务浏览出现:%1不是有效的Win32程序
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
感悟:
1.网站或虚拟目录属性中没有Asp.Net选项卡
解决:打开CMD,输入以下命令
cscript.exe %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0
结语:Asp.Net选项卡是出来了,但是你会发现部分服务无法正常浏览了。。。撤回的方法
cscript.exe %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
2.为某网站或虚拟目录配置.NetFrameWork版本(在没有Asp.Net选项卡的情况下)
#以为默认网站下的A服务配置4.0为例 cd %SYSTEMDRIVE%\Windows\Microsoft.NET\Framework\v4.0.30319 aspnet_regiis.exe -s W3SVC/1/ROOT/A #回车即可。-s 的参数格式可以查看 aspnet_regiis.exe的帮助。【W3SVC/网站序号(默认网站是1,以此类推)/ROOT/服务名称】【 注意大小写区分。】
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
以下是出错以来,在网上搜罗的各个问题及解答
善意的提醒:【以下问题可能仅仅针对于各个作者当时的情景,所以建议各位好好想一下自己的情况,冷静思考下】
——————————————————————————————————————————————————————————
1.命令行键入:
cscript.exe %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
即设置IIS6允许32位程序运行在64位机器上
如果想在改过来的话,直接在命令行键入cscript.exe %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0
2.重新注册.net frameWorks
%SYSTEMROOT%\Microsoft.NET\framework\v2.0.50727\aspnet_regiis.exe –i
3.完成之后,看Web服务扩展,应该会多出一个32位的asp.net将其设置为允许,缺点:这样会使整个IIS上的所有站点都以32位兼容方式运行 。
后续:如果服务器上既有.NET2.0又有.NET4.0,那么需要卸载一个,IIS6好像默认使用的是2.0.
卸载方法%SYSTEMROOT%\Microsoft.NET\framework\v2.0.50727\aspnet_regiis.exe –u
link:http://www.cnblogs.com/sunyjie/archive/2012/04/14/2446864.html
——————————————————————————————————————————————————————————
事件日志:无法加载站点/服务的所有 ISAPI 筛选器。因此启动中止。 Service Unavailable解决
故障状态:Internet 信息服务(IIS)管理器 里 应用程序池出现错误 “应用程序池 已停止 未指定的错误”
本问题的解决:
可能是安装了某些软件,把相关服务去掉便可
问题:一直正常,安装了一个防盗链系统并卸载,重启机器,出现Service Unavailable 事件查看器有:无法加载站点/服务的所有 ISAPI 筛选器。因此启动中止。应用程序池在iis启动后是已停止状态,但可以手动启动,不过启动后会继续出现错误 “应用程序池 已停止 未指定的错误”,问题依然。
打开iis-->查看“网站”的属性--->ISAPI 筛选器-->把有向下的红箭头的项删除掉-->重启iis-->OK
———————————————————————————————————————————————————————————
IIS 无法向会话状态服务器
在"管理工具"中的"服务"启动"ASP.NET State Service",这种方法我自己试了,能解决问题的。
link:http://www.cnblogs.com/lcl_1015/articles/2038103.html
————————————————————————————————————————————————————————————
另外可以参照以下几篇博客:
win2003 64位系统IIS6.0 32位与64位间切换
IIS6.0 应用程序池设置 为每个网站设置独立应用程序池