[转载][IIS]由安装IIS和.net framework先后顺序引发的问题,你中招了吗? – wolfy – 博客园.
引言
最近帮别人做了一个小网站,在本机部署测试的时候,竟然浏览不了aspx后缀的页面,但可以浏览html页面,由此想到了IIS对静态页和动态页不同的处理方式。
http请求到达服务器
当服务器接收到一个http请求时,IIS需要决定如何去处理这个请求,根据文件的后缀名 来判别如何处理该请求,获得后缀名之后,会在服务端寻找可以处理这类后缀名的应用程序,如果IIS找不到可以处理此类文件的应用程序,并且这个文件并不受 服务器端的保护,那么IIS将直接把这个文件返回给客户端。(如:*.html,*.htm,js,*.jpg,*.png等)
能够处理各种后缀名的应用程序,通常成为ISAPI应用程序(Internet Server Applicatin Pogram Interface,互联网服务器应用程序编程接口)。虽然是应用程序,但实际上是一个接口,起到一个代理作用,它的主要工作是映射所请求的页面与此后缀 名相对应的实际的处理程序。
通过以上内容,以及实际部署中遇到的问题,可以猜想到是扩展程序的问题,扩展程序找不到对应的处理程序。
原因
为何会造成此问题?
最近刚重装过系统,系统装好后,先安装的vs2013后安装的IIS导致的,如果先安装IIS再安装vs,系统会自动配置IIS,无需手动配置。
解决方案
MSDN:http://msdn.microsoft.com/zh-cn/library/k6h9cz8h.aspx
可参考MSDN上的说法,重新注册.netframework。
打开cmd
找到framework的路径,我的vs默认安装在c盘,路径为:C:\Windows\Microsoft.NET\Framework\v4.0.30319
输入cd 进入该目录,输入命令aspnet_regiis.exe -i
重新浏览,问题解决。
总结
这是在实际操作中出现的问题,这个问题还真不是一般人能遇到的,大家估计都是正常顺序安装的,很少能遇到,记录一下,这里希望能帮到遇到跟我一样问题的朋友。