使用PHPpipe理器在个人网站上禁用PHP

我从http://php.iis.net/安装了“PHPpipe理器”,效果很好。 但是,我的机器上只有一个网站使用PHP,我想为其他人禁用它。 有没有办法,我可以select哪些网站获得PHP和哪些不?

如果你可以用PHPpipe理器设置PHP标志,你可以像这样禁用PHP:

php_admin_flag engine 0 

在Apache上,您可以select在虚拟主机或htaccess中设置PHP标志。

apache的例子:

 <virtualhost host1...> php_admin_flag engine 1 php_value error_reporting 8191 php_flag apc.enabled 1 </virtualhost> <virtualhost host2...> php_admin_flag engine 0 php_value error_reporting 8191 php_flag apc.enabled 0 </virtualhost> 

与iis我没有直接经验,但我发现以下链接: http : //forums.iis.net/t/1150190.aspx

导致: http : //www.iis-aid.com/articles/how_to_guides/setting_per_directory_php_configuration_values

上周我写了关于从哪里加载php.ini的Windows中的不同位置。 在您的php.iniconfiguration文件中设置的值是全局的,并将为您的服务器上的每个PHP环境设置。 如果要为服务器上的每个站点configuration不同的PHP环境设置,甚至为站点内的目录设置不同的PHP设置,会发生什么情况? 这可以通过ini_set()函数来完成,但是由于不是我们所有人都是编码人员,或者有时间去修改代码,所以还有另外一个select。 registry,这是我们将在这篇文章中看到的方法。

回到PHP4的日子里,在使用IIS的时候,除了全局的PHP指令之外,没有办法configuration任何东西。 现在使用PHP5,可以通过configurationHKLM \ SOFTWARE \ PHP \ Per Directory Valuesregistry值来实现,这个configurationPHP_INI_USER值的方法非常简单快捷。 有了这个registry设置,您可以为您的网站中的任何和所有目录指定不同的PHP指令。

要做到这一点,请使用目录path的结构在HKLM \ SOFTWARE \ PHP \ Per Directory Values下使用regedit在registry中创build一个密钥,然后使用您希望更改的PHP指令的名称创build一个string值。 例如,如果您希望在位于X:\ path \ to \ php的目录中将memory_limit PHP指令设置为24M的值,则需要执行以下操作;

  Create a key with the path of HKLM\SOFTWARE\PHP\Per Directory Values\x\path\to\php Create a string value with the name memory_limit Set the string name value to 24M