ASP.NET网站发布到IIS后验证码不能显示与IIS模式

当ASP.NET网站从VS2012迁移到IIS时,验证码无法显示。问题源于IIS应用程序池配置。解决方案包括:重新安装.NET Framework 4.0或调整应用程序池为经典模式或集成模式,并相应地修改web.config文件中的httpModules和httpHandlers配置。
摘要由CSDN通过智能技术生成

在VS2012上调试运行都正常,把网站部署到IIS后,登陆界面的验证码不能显示了(验证码是通过另一个页面嵌入到登陆页面上的),在网上看到了好多解决方案,启用父路径,验证码的路径问题,登陆权限问题等等,都没有解决。不经意看到了一篇IIS应用程序池添加ASP.NET v4.0的博客,对比在其他电脑发布网站的配置,终于找到了可行的解决方案。

 


有些在IIS6开发的代码需要运行于经典模式,因为在集成模式下会出现错误信息。可能在安装.NET Framewrok 4.0之前,IIS就已经装好了,结果在IIS的应用程序池中只有ASP.NET 2.0的Classic .NET AppPool和ASP.NET v4.0integrated。在使用vs2012开发的程序时,由于使用的是.NET Framework 4.0,所以部署到IIS上的时候,页面提示“无法识别的属性targetFramework"错误,而使用v4.0 集成模式又会提示错误信息。

 

解决方案1:重新安装.NET Framewrok 4.0

 

在Frameworv4.0的目录中安装的程序以管理员权限重新运行一下就可以了.执行以下命令:

%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i

 

应用程序池中就会有v4.0的应用程序池,然后再在Win7下打开控制面板--管理工具--Internet 信息服务(IIS)管理器,选择网站,在右边的“基本设置”中,将“应用程序池”修改为“ASP.NET v4.0 Classic”,如下图所示:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值