shily的博客

博客园 首页 新随笔 联系 订阅 管理

事件的起因:

公司部署好的站点突然发现出了问题,经过一步步的查找(查找问题所在的艰辛只有自己知道 ),查源代码发现程序通过Response.Write 函数将html代码写到页面上,但是显示出来却不正确,开始的时候怀疑是程序员写的代码有问题,后来经领导指点,找了另外一台服务器测试,好使,这下范围缩小到了IIS、操作系统和.netFrameWork(有时候系统问题的查找就是通过不断的尝试、缩小范围的过程)

比较了一下好使的和不好使的服务器的差异,终于找到了,框架不一样,又不敢冒然在公司的服务器上尝试,装个虚拟机还原一下相关的环境吧(现在终于知道虚拟机的好了),虚拟机装好后,果然跟远程服务器上的现象一样,用事实证实了我的猜测。

第一步:卸掉.netFrameWork 4.5框架的所有东西。

第二步:安装.netFramework 4.0框架。

完成了,配置好站点再次运行程序(开启.net 4.0的程序池,在ISAPICGI 限制处允许4.0框架的操作),又出现了奇怪的现象,竟然提示我

HTTP 错误 404.17 – Not Found

请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理

 

真是举步为艰呀,继续上网搜索问题,终于看明白了,告诉我是要配置IIS“处理程序映射”

如下图 

 

点击打开“处理程序映射” 

 

点右键选择“添加脚本映射” 

 

 

请求路径:* .aspx

可执行文件:c:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll

名称:PageHandlerFactory-ISAPI-4.0_32bit

再加一条

请求路径: *.aspx 

可执行文件:c:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll

名称:PageHandlerFactory-ISAPI-4.0_64bit

然后再运行站点,好使了,

 

疑问

1.netFramework为什么会将html解析的不正确,那以后我们怎么输入html代码

 

依照此过程在公司的外网站点上操作,.aspx页面好使了,其它的扩展名的页面也要添加相应的映象处理

 如:*.ashx   *.axd等等;

可执行文件都一样c:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll

名称最好找一个好使的机器一点点抄

最后:建议如果有条件还是重装系统,直接安装.netFramework4.0框架最安全 

posted on 2012-06-15 15:09  两耳不闻窗外事、一心只做程序员  阅读(2733)  评论(0编辑  收藏  举报