【问题标题】:How to add New Application mapping in IIS6 and IIS 7 programmatically using WMI and C#?如何使用 WMI 和 C# 以编程方式在 IIS6 和 IIS 7 中添加新应用程序映射?
【发布时间】:2010-02-16 04:52:51
【问题描述】:

我的目标是使用 WMi (System.Management) 通过 C# 中的代码将 php 扩展添加到 IIS6 和 IIS 7。我不能使用 DirectoryEntry。

我一直在向 IIS 6/IIS7 添加一个新的 ScriptMap 对象。

我在这里和那里阅读了一些帖子,听说从 Scratch 添加新的 WMi 对象很困难。

我想启用 IIS 6/IIS7 来处理 php 和 aspx 文件并能够处理它们。我已将 php zip 存档解压缩到我系统上的一个目录(未安装它)。问题是我能够修改现有的 ScriptMap 对象,但我不明白添加新的 ScriptMap 对象。

我也不确定向 ScriptMap 添加新的扩展处理程序是否会解决问题。

请指导。

谢谢

【问题讨论】:

  • 您能否更清楚地了解您在 IIS6 和 IIS7 上使用了哪些 WMI 命名空间?

标签: php asp.net iis-7 iis-6 wmi


【解决方案1】:

@Kev。 是的。知道了。感谢 Kev 解决了问题。 :-)

解决办法是

  1. "Extensions" 属性的 ScriptMap 数组和 "ScriptProcessor" 中添加 "*.php" 扩展 属性设置为“php5isapi.dll”的路径。

  2. 第二件事是将 "Default.php"(或任何其他合适的默认 php 文档)添加到 "DefaultDoc" 数组的第零个索引中其他类似 "Default.aspx, Default.htm, Default.html, Default.asp"

  3. 第三件事是启用/允许 PHP ISAPI 扩展。 IIsWebService.EnableExtension 成功了。

再次感谢 kev 为我提供了起点。

【讨论】:

  • @Steve - 呜……不知道我在哪里帮忙:)。不过请注意,这些天在运行 PHP 时,您应该使用 IIS6/7 的 FastCGI 位。 iis.net/expand/FastCGI
【解决方案2】:

试试 PHP 安装程序,它有一个 IIS 选项。为什么要重新发明轮子?

PHP.net installation

【讨论】:

  • 其实我在重新发明轮子。我知道安装程序会自动执行此操作,我也知道我们可以通过 IIS 管理器手动执行此操作。我有兴趣以编程方式进行。
  • @talvi - 没有帮助,如果您正在构建配置系统,您需要能够以编程方式添加和删除脚本映射/处理程序映射。
猜你喜欢
  • 1970-01-01
  • 2011-10-05
  • 1970-01-01
  • 1970-01-01
  • 2012-04-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-10
相关资源
最近更新 更多