我的Microsoft Windows Server 2008 Standard 6.0 SP2上有IIS 7.0和两个版本的PHP v5和v7.问题是,PHP7或IIS尝试将PHP5的PHP.ini用于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)
我认为,这是一个PHP(cgi-fcgi SAPI)问题,而不是IIS问题(但不确定).
如何在Windows Server 2008上为PHP CGI / FastCGI SAPI设置正确的PHP.ini?
还试过它在注册表中,但这没有帮助:
解决方法:
Jan Reilink的solution似乎也是正确的,但遗憾的是我无法找到,如何以正确的方式应用它(请参阅this以及我在Jan的答案下面的其他评论).
最后我通过IIS GUI解决了这个问题:
然后FastCGI设置 – > Environmentvariables – > PHPRC:
另请参阅IIS文档“使用FastCGI在IIS 7上托管PHP应用程序”一章中的“Configure IIS to Handle PHP Requests”.