无法使用WebDAV从VS 2008发布到Windows 2008

时间:2009-09-30 09:12:48

标签: visual-studio-2008 windows-server-2008 webdav

我正在尝试将VS 2008中的网站直接发布到Windows 2008服务器上的映射文件夹。一些文件发布OK(例如aspx文件)但其他文件没有(例如ascx,asmx,cs,config,sitemap等文件)。此外,某些文件夹创建正常而其他文件夹没有(例如,无法创建bin文件夹)。我收到的消息是(在这种情况下是Web.config文件):

无法将“Web.config”添加到网站。无法添加文件'Web.config'。系统找不到指定的文件。

对于记录,它将OK发布到本地文件夹和FTP站点。

1 个答案:

答案 0 :(得分:0)

它受到保护以免被修改,因为在applicationHost.config文件中你会发现:

<requestFiltering>
            <fileExtensions allowUnlisted="true" applyToWebDAV="true">
                <add fileExtension=".asa" allowed="false" />
                <add fileExtension=".asax" allowed="false" />
                <add fileExtension=".ascx" allowed="false" />
                <add fileExtension=".master" allowed="false" />
                <add fileExtension=".skin" allowed="false" />
                <add fileExtension=".browser" allowed="false" />
                <add fileExtension=".sitemap" allowed="false" />
                <add fileExtension=".config" allowed="false" />
                <add fileExtension=".cs" allowed="false" />
                <add fileExtension=".csproj" allowed="false" />
                <add fileExtension=".vb" allowed="false" />
                <add fileExtension=".vbproj" allowed="false" />
                <add fileExtension=".webinfo" allowed="false" />
                <add fileExtension=".licx" allowed="false" />
                <add fileExtension=".resx" allowed="false" />
                <add fileExtension=".resources" allowed="false" />
                <add fileExtension=".mdb" allowed="false" />
                <add fileExtension=".vjsproj" allowed="false" />
                <add fileExtension=".java" allowed="false" />
                <add fileExtension=".jsl" allowed="false" />
                <add fileExtension=".ldb" allowed="false" />
                <add fileExtension=".dsdgm" allowed="false" />
                <add fileExtension=".ssdgm" allowed="false" />
                <add fileExtension=".lsad" allowed="false" />
                <add fileExtension=".ssmap" allowed="false" />
                <add fileExtension=".cd" allowed="false" />
                <add fileExtension=".dsprototype" allowed="false" />
                <add fileExtension=".lsaprototype" allowed="false" />
                <add fileExtension=".sdm" allowed="false" />
                <add fileExtension=".sdmDocument" allowed="false" />
                <add fileExtension=".mdf" allowed="false" />
                <add fileExtension=".ldf" allowed="false" />
                <add fileExtension=".ad" allowed="false" />
                <add fileExtension=".dd" allowed="false" />
                <add fileExtension=".ldd" allowed="false" />
                <add fileExtension=".sd" allowed="false" />
                <add fileExtension=".adprototype" allowed="false" />
                <add fileExtension=".lddprototype" allowed="false" />
                <add fileExtension=".exclude" allowed="false" />
                <add fileExtension=".refresh" allowed="false" />
                <add fileExtension=".compiled" allowed="false" />
                <add fileExtension=".msgx" allowed="false" />
                <add fileExtension=".vsdisco" allowed="false" />
            </fileExtensions>
            <verbs allowUnlisted="true" applyToWebDAV="true" />
            <hiddenSegments applyToWebDAV="true">
                <add segment="web.config" />
                <add segment="bin" />
                <add segment="App_code" />
                <add segment="App_GlobalResources" />
                <add segment="App_LocalResources" />
                <add segment="App_WebReferences" />
                <add segment="App_Data" />
                <add segment="App_Browsers" />
            </hiddenSegments>
        </requestFiltering>

我正在考虑更改applicationHost.config文件因为这个,但事实上我们太复杂了:因为我们有一个WebDAV映射的驱动器/文件夹,你可以直接从该文件夹打开你的网站并编辑它到位。无需再发布。

如果您仍希望在本地工作,然后发布到WebDAV驱动器,则可以使用“复制网站”命令而不是“发布网站”命令。