【发布时间】:2008-10-16 21:52:27
【问题描述】:
我注意到标准 IIS Web 文件夹结构下经常有一个 aspnet_client 文件夹。这是干什么用的?需要吗?
【问题讨论】:
标签: iis
我注意到标准 IIS Web 文件夹结构下经常有一个 aspnet_client 文件夹。这是干什么用的?需要吗?
【问题讨论】:
标签: iis
在 .NET 1.1 和之前的版本中,此文件夹为 ASP.NET 提供了对验证控件和其他功能的 JavaScript 支持。如果您没有运行 .NET 1.1 或更早版本的站点,删除它应该是安全的。我会先重命名它以确保它不会引起任何问题。
【讨论】:
除了其他人所说的,它通常是由 aspnet_regiis 工具创建的,该工具可以由 Windows Update/AddRemove Windows components/IIS 之类的东西(重新)运行。因此,有时即使您确实删除了它,它也可能会随机返回。可能有办法阻止这种行为,但我还没有找到它(也许将应用程序版本更改为 .NET 2 实际上会这样做)。
因此,除非您使用 .NET 1.0/1.1 的某些功能(验证、智能导航等),否则您可以毫无问题地删除它,如果它再次出现请不要太惊讶!
【讨论】:
aspnet_client 是一个文件夹,用于存放“必须通过 HTTP 提供服务的资源,但基于每个服务器而不是每个应用程序安装”。
aspnet_client 的一些用途包括为以下目的存储资源(例如 JavaScript、图像):
将来可能/将会进一步(ab)使用此文件夹。不用说,由于它包含“应用程序正确运行所必需的”但“不应该由应用程序部署”的东西,因此对于开发人员和系统管理员来说,这将是一场噩梦。
文件夹内容的“原型”似乎在 C:\inetpub\wwwroot 中,并且假设任何给定的 IIS 网站缺少 /aspnet_client 资源似乎是合理的,那么 IIS 将尝试执行正确的事情......作为最后的手段......在网站根文件夹中创建一个物理文件夹,并将文件复制到那里。似乎 IIS 至少会在给定服务器调用“ASPNET_regiis /c”时执行此操作 - 这可能会在某些关键时刻自动发生……例如当 .NET 框架更新应用于具有 IIS 角色的服务器时。
处理 aspnet_client 目录的策略包括:
可能最重要的是,作为开发人员,您应该清楚地了解并记录您的应用程序对 aspnet_client 目录的依赖关系,并确保您的安装过程有相关说明以确保该目录存在。但是,您可能不必费心将目录作为打包的 Web 应用程序或网站的一部分来实际提供 - 你怎么可能为服务器将看到的每个版本的 .NET 框架执行此操作你的应用程序的生命周期?!
我稍后会回到一些链接:
【讨论】:
它还具有某些图标和脚本,即使在 1.1 之后的版本中,水晶报表也能正常运行
【讨论】:
C:\inetpub\wwwroot\aspnet_client\system_web\4_0_30319\crystalreportviewers13 下寻找东西到我的 Ripplestone 实例所在的目录。
该文件夹通常用于存储客户端 Javascript,ASP.NET 将其用于验证之类的事情。
删除应该是安全的。
【讨论】:
我想我会在这里添加这个,因为这是我在谷歌搜索这个问题时一直被定向到的链接。显然,对于 .NET 4.0 和更新版本,不再需要此文件夹,并且可以毫无问题地删除。
【讨论】: