我正在尝试在多个PHP版本(5.2,5.3,5.4和5.5)的devel计算机上configurationIIS8服务器,以testing脚本如何针对每个版本运行。 在服务器级别上,我成功创build了所有Handler映射,创build了所有指向相同物理path( c:\ www \ htdocs )的所有4个站点(每个站点都为一个PHP版本)。 现在我认为,对于每个站点,我将更改Handler映射顺序,使一个PHP版本为主。 但问题是这个设置保存在c:\ www \ htdocs中的 web.config文件中。 所以,而不是改变一个网站的PHP版本,它改变了所有网站。
TechNet文档的web.config读取没有太多帮助。 这甚至可以configuration?
您需要将设置存储在applicationHost.config服务器级别的configuration文件中,而不是保存在文件夹中的web.config文件中。
一种方法是手动将configuration从web.config文件移动到C:\Windows\System32\inetsrv\config\的applicationHost.config文件中。
但是,手工编辑这个文件要安全得多。 相反,您可以使用appcmd set config SITE_NAME ...和/commit:appHost标志结尾(其中…是要设置的设置)。
要使用AppCmd添加PHP,您需要在system.webServer/handlers添加处理程序映射,并在system.webServer/fastCGI添加FastCGI条目。 IIS的官方PHP指令有基本的命令 – 所有你需要做的就是在set config和commit标志后添加站点名称。
或者,您可以使用IISpipe理器的“configuration编辑器”。 微软的configuration编辑器的官方教程是在http://www.iis.net/learn/manage/managing-your-configuration-settings/editing-collections-with-configuration-editor 。