【问题标题】:How can I turn on DynamicCompression feature of IIS programmatically?如何以编程方式打开 IIS 的 DynamicCompression 功能?
【发布时间】:2011-01-23 23:41:48
【问题描述】:

我正在为我的 Web 应用程序制作安装程序。我的 Web 应用程序大量使用 CSS 和 JS,因此我想为 IIS7/7.5 启用静态和动态 HttpCompression。

需要2个步骤:

  1. 我可以修改web.config,加上<httpcompression>标签,就可以了。
  2. 必须在 Windows 功能中打开 DynamicContentCompression 才能使 httpCompression 工作。

静态 HttpCompression 在 IIS7 和 IIS7.5 中默认启用,但动态 HttpCompression 默认不启用(尽管它可用)。我可以手动打开:Start/ControlPanel/ProgramsAndFeatures/TurnWindowsFeatures on or Off/IIS/WWW Service/Performance features/Dynamic Content Compression,但是我如何以编程方式打开该 Windows 功能? 我可以在我的安装程序中使用 PowerShell、C#。

知道我如何能够做到这一点吗?谢谢。

【问题讨论】:

    标签: iis-7 windows-7 iis-7.5 http-compression server-configuration


    【解决方案1】:

    您可以使用 appcmd 工具将其打开。从命令行:

    C:\windows\system32\inetsrv\appcmd set config /section:urlCompression /doDynamicCompression:True
    

    或者,如果您想在 PowerShell 脚本中执行它:

    & $env:windir\system32\inetsrv\appcmd set config -section:urlCompression /doDynamicCompression:true
    

    您将需要管理权限才能执行此操作。

    【讨论】:

    • 谢谢 Greg,但我需要的 addcmd 不是 Turn on the Windows Feature
    【解决方案2】:

    免责声明:这是完全未经证实和未经测试的......

    Greg 的上述回答几乎是正确的,但这只是解锁已安装的功能。默认情况下,当安装该功能时,它会被锁定......一直到机器级别。

    原因是动态压缩确实会与服务器 CPU 发生冲突。因此,在托管环境中,这可能会杀死事情。即使使用您自己的专用服务器,它也可能会造成严重后果。所以安全的方法是默认锁定它,只有你知道你在做什么,然后去解锁它。

    所以 .. 用谷歌搜索一下,i came to this page

    请注意这篇 technet 文章如何使用命令行来安装示例静态 IIS 服务器所需的所有包。我知道您的问题不是针对静态 IIS 服务器...但它确实突出了可能的命令。

    所以我猜……也许是这个? ::

    Start /w pkgmgr /iu:IIS-HttpCompressionDynamic
    

    ??也许:)

    here's another article with more options...

    【讨论】:

      【解决方案3】:

      这就是我会做的方式:

      dism /online /enable-feature /featurename:IIS-HttpCompressionDynamic

      dism 允许您检查命令的返回码,允许您验证它是否有效(或已安装)

      【讨论】:

        【解决方案4】:

        这些 PowerShell 命令将添加动态压缩功能。

        Import-Module ServerManager
        Add-WindowsFeature Web-Server, Web-Dyn-Compression
        

        不要忘记以管理员身份运行或拥有管理员权限。

        【讨论】:

        • 请改进你的答案
        【解决方案5】:
        Enable-WindowsOptionalFeature -Online -FeatureName IIS-HttpCompressionDynamic
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-04-16
          • 1970-01-01
          • 1970-01-01
          • 2015-03-07
          • 2016-06-04
          • 1970-01-01
          相关资源
          最近更新 更多