【问题标题】:Unable to publish from VS 2008 to Windows 2008 using WebDAV无法使用 WebDAV 从 VS 2008 发布到 Windows 2008
【发布时间】:2009-09-30 09:12:48
【问题描述】:
我正在尝试将网站从 VS 2008 直接发布到 Windows 2008 服务器上的映射文件夹。一些文件发布正常(例如 aspx 文件),但其他文件不发布(例如 ascx、asmx、cs、config、站点地图等文件)。此外,有些文件夹可以正常创建,而另一些则不能(例如无法创建 bin 文件夹)。我得到的消息是(在这种情况下是 Web.config 文件):
无法将“Web.config”添加到网站。无法添加文件“Web.config”。系统找不到指定的文件。
为了记录,它将 OK 发布到本地文件夹和 FTP 站点。
【问题讨论】:
标签:
visual-studio-2008
windows-server-2008
webdav
【解决方案1】:
它被保护不被修改,因为在 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 驱动器,您可以改用复制网站命令而不是发布网站命令。