在 Windows 8 和 Internet Information Service 8.5 上 - 如何设置 PHP


On Windows 8 and Internet Information Service 8.5 - how to setup PHP?

首先,我要说的是,我对Microsoft的互联网信息服务很陌生。我需要在我的电脑上设置 IIS,它还应该执行 PHP 文件。到目前为止,我已经安装并运行了所有内容 - 最新的PHP并启用了IIS服务。我只能查看默认网页 (*.html( 文件。它不会执行 PHP 文件。如果我尝试请求任何PHP文件,则会收到403错误。

我一直在网上研究,似乎对在IIS上设置PHP(扩展(感到更加困惑。一些网站说你需要通过它的管理器来配置PHP。其他人说我需要通过IIS管理器添加角色和FastCGI模块。根据Microsoft我需要将php.ini-development重命名为php.ini并将php指向某个DLL文件。

我使用的是Windows 8,IIS 8.5和PHP 5.6。我希望有人能为我指明方向。

您可以手动或使用 IIS 管理器进行设置。我会自己设置这个,所以你知道发生了什么。

您需要设置 CGI 角色功能。这包括FastCGI。以下是如何执行此操作的一些信息:http://www.iis.net/configreference/system.webserver/cgi

然后,您将在某个地方需要PHP包。让我们在C:''PHP中说。如果需要,您可以更改它。

您将需要快速CGI设置。您可以通过命令行轻松设置:

%windir%'system32'inetsrv'appcmd set config /section:system.webServer/fastCGI /+[fullPath='C:'php'php-cgi.exe',activityTimeout='1200',requestTimeout='1200',arguments='-c%20C:'php'php.ini']

此示例使用 20 分钟的超时。

这将设置处理程序:

%windir%'system32'inetsrv'appcmd set config /section:handlers /+[name='PHP_FastCGI',path='*.php',verb='*',modules='FastCgiModule',scriptProcessor='"C:'php'php-cgi.exe|-c%20C:'php'php.ini"',responseBufferLimit='0',resourceType='Either']

PHP.ini设置:

[cgi-fcgi]
fastcgi.impersonate=1
cgi.force_redirect=0
cgi.fix_pathinfo=1

对于写入访问权限,您需要授予 IURS 的"修改"访问权限。

更多信息: http://php.net/manual/de/install.windows.iis7.php

我确实尝试了发布在心中的答案,但我一直遇到问题。事实上,我也按照Microsoft一步一步的PHP设置教程来学习TOOTH。我仍然无法让PHP在我的IIS上工作。虽然Microsoft警告不要使用Windows平台安装程序(WPI(,但我下载了WPI并运行了安装程序。在框架下,我找到了 PHP 5.6 并单击"添加"按钮。然后,单击"安装"按钮。安装仅用了大约 30 秒。只是为了确定。我检查了IIS管理器,它是PHP管理器。打开PHP管理器后,我注意到所有设置都在那里并启用了,并且已经启用了15个不同的扩展名。此外,它还禁用了大约 35 个扩展,但它为您提供了在那里启用它们的选项。

现在,我的PHP文件按预期呈现。我什至做了phpinfo((;浏览器显示所有PHP设置和信息。:)