引言

最近帮别人做了一个小网站,在本机部署测试的时候,竟然浏览不了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

重新浏览,问题解决。

总结

这是在实际操作中出现的问题,这个问题还真不是一般人能遇到的,大家估计都是正常顺序安装的,很少能遇到,记录一下,这里希望能帮到遇到跟我一样问题的朋友。

最新文章

  1. Azure PowerShell (7) 使用CSV文件批量设置Virtual Machine Endpoint
  2. ajax实现下拉菜单无刷新加载更多
  3. 浏览器查看cookie
  4. C#学习笔记(二)——变量和表达式
  5. Linux 命令 - killall: 通过进程名向进程发送信号
  6. iOS开发:AVPlayer实现流音频边播边存
  7. 2014年度辛星css教程夏季版第一节
  8. jquery 判断是否 ie6 ie7 ie8
  9. input在苹果浏览器下变成圆角的解决方案
  10. CI框架 .htaccess 隐藏url在index.php解决方案
  11. Hive函数:GROUPING SETS,GROUPING__ID,CUBE,ROLLUP
  12. [SHOI 2011]双倍回文
  13. 《java入门第一季》之面向对象(方法重写问题)
  14. nginx访问统计
  15. html-webpack-plugin插件使用chunks属性时报错
  16. Studio启动的时候报错 Could not install Gradle distribution from
  17. ASP.NET 网站管理工具
  18. python中的apscheduler模块
  19. Linux系统产生随机数/dev/random 和 /dev/urandom
  20. 报错:无法截断表 '某表',因为该表正由 FOREIGN KEY 约束引用

热门文章

  1. 让Linux应用更加得心应手的
  2. Effective C++笔记(二):构造/析构/赋值运算
  3. 关于真多核和加多核&线程由哪几部分组成
  4. PHP 执行系统外部命令的函数- system() exec() passthru()
  5. GDB调试实用命令
  6. appium---【Mac】Appium-Doctor提示WARN:“applesimutils cannot be found”解决方案
  7. C#窗体内嵌外部程序(cmd.exe)的显示【转载】
  8. Redis实战(六)
  9. 转:Uncovering Drupalgeddon 2(cve-2018-7600)漏洞深度解析(附漏洞利用代码地址)
  10. JAVAEE学习——hibernate04:查询种类、HQL、Criteria、查询优化和练习为客户列表增加查询条件