在网络上托管我的Web API应用程序时我做错了什么?

时间:2014-02-18 19:09:13

标签: iis asp.net-web-api iis-express application-pool

我按照this article中的步骤操作,但当我在浏览器中输入我的IP地址(机器名称)和我按照这些说明设置的端口号(即8090)时,我只看到一个目录列表我的网站:

enter image description here

注意:使用直接IP地址(代替机器名称)会得到完全相同的结果。

对于Web API网站/应用,我是否需要在普通IP地址/ MachineName +端口号URL后附加一些内容?

根据IIS管理员的说法,我成功设置了要运行的应用程序:

enter image description here

Web API应用程序没有Default.aspx“startng point”页面或其他类似页面;我还应该使用其他类似的东西吗?我试过了:

http://shannon2:8090/Web.config

......但那给了我:

HTTP错误404.8 - 未找到 请求过滤模块配置为拒绝URL中包含hiddenSegment部分的路径。

我错过了哪一步?

注意:引用的文章有一个IIS 8下载,但根据控制面板,我已经安装了IIS 8,所以我没有重新安装它。但是,IIS管理器的“关于”框表示它是版本7.5.7600.16385(?!?)

有没有办法强制使用版本8而不是这个版本?在这种情况下是否重要?

更新

基于我在此处阅读的内容[http://msmvps.com/blogs/deborahk/archive/2014/02/18/the-world-s-simplest-angularjs-example-in-visual-studio.aspx],具体而言“按照惯例,应用程序的主文件是Index.html”,我也试过了:

http://shannon2:8090/Index.html

......但得到了:

HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

但是我的项目中并没有真正的Index.html文件,所以我猜这是一个可以轻易搞错的镜头。

1 个答案:

答案 0 :(得分:1)

您正在查看目录列表,因为您引用的页面告诉您启用目录浏览。

我不确定绅士在这个链接中试图传达的是什么。我认为他正试图传达如何访问网络中的“文件”。但是,禁用目录浏览,你应该没问题。

Web API应该在应用程序池设置中的托管管道中运行。