Как установить путь php.ini для PHP CGI / FastCGI SAPI на Windows Server 2008 r2?

У меня IIS 7.0 и две версии PHP v5 и v7 на моем Microsoft Windows Server 2008 Standard 6.0 SP2. Проблема в том, что PHP7 или IIS пытается использовать php.ini PHP5 для «веб-сайтов» IIS.

Итак, в командной строке все в порядке:

 X:\>php -v PHP 7.0.2 (cli) (built: Jan 6 2016 12:59:59) ( NTS ) Copyright (c) 1997-2015 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2015 Zend Technologies X:\>php --ini Configuration File (php.ini) Path: C:\Windows Loaded Configuration File: D:\Data\Programme\php7\php.ini Scan for additional .ini files in: (none) Additional .ini files parsed: (none) 

Но в диспетчере IIS и в phpinfo() нет:

IIS-сайт-PHP-настройка

phpinfo-версия-SAPI-PHP-ини

Я думаю, это проблема PHP ( cgi-fcgi SAPI), а не проблема IIS (но не уверен).

Как установить правильный php.ini для PHP CGI / FastCGI SAPI на Windows Server 2008?


Также попробовал это через реестр, но это не помогло:

Реестр-PHP-IniFilePath

Вам необходимо установить переменные среды в конфигурации FastCgi для размещения нескольких версий PHP в IIS. Тот, который вы хотите, это PHPRC:

 AppCmd set config -section:system.webServer/fastCgi /+"[fullPath='c:\php5\php-cgi.exe', arguments='-c c:\php5\php.ini'].environmentVariables. [name='PHPRC',value='c:\php5\php.ini']" /commit:apphost 

(обратите внимание на аргумент -c )

и сделать то же самое для PHP 7, и изменить путь. У меня есть это и многое другое, объясняемое в моем сообщении в блоге https://www.saotn.org/php-wincache-on-iis/ .

Решение Jan Reilink кажется правильным, но, к сожалению, я не смог узнать, как правильно применить его (см. Этот и другие мои комментарии ниже ответа Яна).

Наконец, я решил его решить с помощью графического интерфейса IIS:

IIS GUI -> Настройки FastCGI

И затем FastCGI Settings -> EnvironmentVariables -> PHPRC :

IIS-FastCGI-Настройка-EnvironmentVariables-PHPRC

См. Также « Настройка IIS для обработки запросов PHP » в главе «Использование FastCGI для размещения приложений PHP на IIS 7» документации IIS.