把上周在家电脑上可以部署的webapi示例拿到服务器上,结果遇到许多问题。不过还算解决了,现记录一下方法。
1、win2008安装iis.
是从角色里安装Web 服务器(IIS) 和应用程序服务器。注意把asp.net勾选 。
2、添加网站,修改web.config
添加后,提示targetFramework无效,删掉可以用。
3、请求index.html
页面能打开,但所有 的api/*的请求无效。 .net代码环境不对吗?
4、写了个webform1.aspx,用.net来输出当前时间。
成功访问。
5、重装了.net 4.5.1库,重启
还是不能访问api/*的请求。
6、直接在浏览器就访问该请求。
显示404。 去服务器上访问,显示详细信息,大概是:处理程序是:StaticFile
而且显示maprequestHandler,于是百度到一个英文文章:
http://www.cnblogs.com/yetiea/archive/2013/01/22/2871688.html
根据提示解决了问题:
a)打开IIS中网站的“处理程序映射”,显示StaticFile对所有的* 匹配的文件和文件夹都处理。
所以先把这修改为 对 *.* 的所有 文件,进行处理。
b)添加对*的处理。 路径为 * ,执行文件对应于.net文件夹中,aspnet_isapi.dll文件。然后随便起个名字:Wildcard
c) 设置应用池为:Classic .NET AppPool .
终于webapi的请求返回了结果。