代码之家  ›  专栏  ›  技术社区  ›  mnield

禁用Visual Studio Web服务器目录浏览

  •  3
  • mnield  · 技术社区  · 17 年前

    我正在使用Visual Studio的内置Web服务器来测试和接收服务器应用程序。当我在IIS中运行应用程序时,如果我点击了虚拟目录的根目录,episerver将接管并将损坏的页面服务器发送给我。使用Visual Studion Server(我使用SDK是为了获得许可证),它总是为我提供站点的“目录列表”视图。是否有人知道如何将此Web服务器配置为不允许目录列表/浏览?

    其他信息: 这个问题似乎只会影响到Visual Studion Web服务器的根(从这里开始我将称之为Cassini)。例如,如果我从localhost:6666运行一个站点,那么我会发现localhost:6666/en/工作得很好,并且上位服务器vpp会知道它在做什么。如果我使用localhost:6666/,那么vpp就永远不会出现(或者说它是接缝)。在我看来,当卡西尼的根被点击时,它会检查页面是否存在(这并不是因为我没有默认设置)。如果确定页面不存在,那么它将提供目录列表,而不是404。我要做的第一件事是在Cassini中对目录浏览进行Dispable,然后看看为什么VPP没有被正确操作。

    因此,我认为问题的基础是:当Cassini是Visual Studio启动一切时,是否有方法修改这些设置?

    (上位服务器可能是一个红鲱鱼,但以防万一,它是CMS版本5)

    进一步更新 我设法找到了卡西尼3.5的来源,并试了一下。3.5工作正常,在本例中表现类似于IIS。也就是说,缺少默认文档不会导致目录列表,相反,如果允许HTTP处理程序启动,那么episerver会执行其余操作!所以问题是,我能在Web服务器上实现同样的视觉工作室工作吗?

    4 回复  |  直到 16 年前
        1
  •  3
  •   Allan Thraen    16 年前

    确保您有~/default.aspx文件。它不会呈现,但Cassini中需要虚拟路径提供程序有机会处理“/”的请求。 当然,如果你还是这样做的话,你也可以用它作为起始页。

        2
  •  0
  •   John Saunders    17 年前

    即使你能让服务器不显示目录列表,你能让上位服务器接管吗?


    编辑:来自注释 它与/en/一起工作的事实使我认为这是微软可以解决的问题。我建议你问一下供应商是否有解决办法。如果没有,请在 http://connect.microsoft.com/visualstudio/ . 请务必指定有关episerver、供应商URL等的详细信息。

    很明显,它与/en一起工作,但您需要一个允许它在根目录下工作的设置。

    创建建议后,请编辑问题以包含指向所创建建议的链接。这样,其他阅读你问题的人可以投票决定他们认为这有多重要。

        3
  •  0
  •   MatthewMartin muthu    17 年前

    上位机部分让我困惑。但是,如果您询问如何设置vs开发服务器的默认页面(基于cassini代码),则需要在项目属性(右键单击Web项目)、Web、启动操作、特定页面、foo.aspx中进行设置。

    我怀疑cassini/vs开发服务器没有默认的页面功能——cassini服务器的源代码(vs开发服务器的祖先) is on the web and you can check that 并通过构建自定义版本添加默认页。而且,它没有一个非常长的列表,其他功能,如IIS。

        4
  •  0
  •   Johan Kronberg    17 年前

    您运行的是哪种服务器版本? 您是使用上位服务器管理器安装它的吗?

    在主机名根目录或(虚拟)目录下运行站点之间的配置始终存在一些差异。

    检查web.config中的站点设置块,确保在项目根目录下有一个default.aspx。

    推荐文章