Win2003X64位,IIS6.0 32位 部署以及问题集锦_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > Win2003X64位,IIS6.0 32位 部署以及问题集锦

Win2003X64位,IIS6.0 32位 部署以及问题集锦

 2013/12/12 16:09:18  xiaotiannet  博客园  我要评论(0)
  • 摘要:目前大多数的服务器搭建的2003X64的系统+IIS6.0,但是大多数部署的IIS6.0又是32位的,所以在实际运用中就有各种各样的情况,我这里稍作总结。总:出现问题,首先冷静1.刷新IIS,查看【应用程序池】选项是否存在。如果不存在,在【网站】右键【属性】-【服务】选项卡,如下图将【以IIS5.0隔离模式运行WWW服务】的选项打钩去掉。2.查看各个网站及所属的虚拟目录【属性】--单击“主目录”选项卡,确认您正在指派的目录或虚拟目录的“应用程序名”是否已被填写。如果“应用程序名”框尚未被填写
  • 标签:iiS 问题

目前大多数的服务器搭建的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/服务名称】【   注意大小写区分。】

 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

以下是出错以来,在网上搜罗的各个问题及解答

善意的提醒:【以下问题可能仅仅针对于各个作者当时的情景,所以建议各位好好想一下自己的情况,冷静思考下】

——————————————————————————————————————————————————————————

在64位windows server 2003的IIS6上运行32位的.NET程序

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位间切换

Windows Server 2003 x64 IIS配置

IIS6.0 应用程序池设置 为每个网站设置独立应用程序池

发表评论
用户名: 匿名