解决在Windows 2003上创建Web项目的难题
<br> <b>症状</b><br> 如果您使用 Visual Studio .NET 2002 新建 Web 项目,并连接到作为 Web 服务器的 Microsoft Windows Server 2003,则会显示“Web 访问失败”对话框,并且您会收到以下错误信息:<br> <br> The default Web access mode for this project is set to file share, but the project folder at 'http://localhost/WebApplication1' cannot be opened with the path 'c:\inetpub\wwwroot\WebApplication1'.The error returned was:<br> <br> Unable to create web project 'WebApplication1'.The file path 'c:\inetpub\wwwroot\WebApplication1' does not correspond to the URL 'http://localhost/WebApplication1'.The two need to map to the same server location.HTTP Error 404:Not Found<br> <br> <b>原因</b><br> 发生此问题的原因在于:Microsoft Internet 信息服务 6.0 (IIS) 阻止所有未显式映射的文件扩展名。默认情况下,出于安全原因,未在 IIS 6.0 上映射 .tmp 文件扩展名。<br> <br> 在创建 Web 项目的过程中,Visual Studio .NET 2002 会进行测试以确认 URL 和 UNC 路径是否匹配。为此,Visual Studio .NET 将文件扩展名为 .tmp 的文件写到服务器上,然后通过 http 请求从该服务器中请求此文件。因为没有在 IIS 6.0 上映射 .tmp 文件扩展名,所以 IIS 会返回 HTTP 错误 404。这就导致 Visual Studio .NET 返回“症状”部分中介绍的错误信息。<br> <br> 注意:当您使用 Visual Studio .NET 2003 时不会发生此问题,因为此版本使用文件扩展名为 .htm 的文件执行此过程。 <br> 替代方法<br> 解决此问题的办法有下列三种:<br> 解决办法 1:<br> 使用 Visual Studio .NET 2003 在 Windows 2003 Server 上创建项目。这是推荐使用的解决办法。如果生产计算机连接到 Internet,则最好使用此版本,因为映射 .tmp 文件扩展名可能具有安全风险。<br> 解决办法 2:<br> 如果安全不成问题(例如,如果您使用的是独立的开发计算机),请执行下列步骤来映射 .tmp 文件扩展名:<br> <br> 启动 Internet 信息服务 MMC。<br> 右键单击 Web 站点,然后单击“属性”。<br> 单击“HTTP 标题”选项卡,然后单击“MIME 类型”。<br> 单击“新建”以添加新的 MIME 类型。<br> 在“扩展名”文本框中,键入 .tmp。<br> 在“MIME 类型”文本框中,键入 text/plain。<br> 解决办法 3:<br> 安装以下 Microsoft 知识库文章中的修复程序:<br> 831210 FIX:Cannot Create Web Projects on Windows Server 2003 <br> <br> <b>状态</b><br> Microsoft 已经确认这是本文开头列出的 Microsoft 产品中的错误。 正在审查此错误的修补程序以便在以后的 Service Pack 版本中发布。 <br> <br> <b>重现问题的步骤</b><br> 1. 启动 Visual Studio .NET 2002。在“文件”菜单上,指向“新建”,然后单击“项目”。<br> 2. 对于项目类型,单击“ASP.NET Web 应用程序”。<br> 3. 在“位置”文本框中,指定一台运行 Windows 2003 且没有映射 .tmp 文件扩展名的计算机。<br> 4. 单击“确定”。 <
页:
[1]