如何在php.ini中使用IIS中的系统环境变量

时间:2017-12-28 22:51:47

标签: php iis

我发现当通过cli执行php时,php可以访问自定义的Windows系统环境变量,但是当IIS运行php时却没有。

例如,我可以把它放在php.ini中:

c:\>php.exe -v 
 MSVC14 (Visual C++ 2015) x86 ) Copyright (c) 1997-2017 The PHP Group
 Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.1.1, Copyright (c) 1999-2017, by Zend Technologies
    with Xdebug v2.5.5, Copyright (c) 2002-2017, by Derick RethansPHP 7.1.1 (cli) (built: Jan 18 2017 18:50:48) ( NTS

和php在通过cli调用时正确加载xdebug:

cmake -DCMAKE_BUILD_TYPE=Debug ..

但是当我在IIS提供的页面上调用phpinfo()时,Xdebug不会出现。我假设它是因为IIS无法访问我创建的自定义系统变量。有人可以告诉我如何在IIS中访问这些变量,最好是以我可以编写的方式(无论是通过批处理文件,电源shell还是其他方式)进行自动部署。

1 个答案:

答案 0 :(得分:0)

所以我发现从命令行或批处理文件执行setx时:

Collapsed

它在用户空间中创建系统变量。由于IIS无法访问它,因此无法扩展php.ini变量。但是,如果传递/ M标志,如下所示:

setx PHP_PATH {path to php here}

这会在IIS有权访问的全局空间中创建一个变量。

相关问题