在 Windows 上手动安装 PHP

选择 Web 服务器

IIS

IIS 是 Windows 内置的服务。在 Windows 服务器版本上,请使用服务器管理(Server Manager)来添加 IIS 规则。同时需要设置 CGI 角色规则。在 Windows 桌面版本上,需要使用控制面板中的 "添加/删除程序" 功能来添加 IIS。请参阅微软的官方文档的 » 详细说明。 对于桌面 web app 开发者,你也可以选择 IIS/Express 或 PHP Desktop。

Example #1 命令行下配置 IIS 和 PHP


@echo off

REM download .ZIP file of PHP build from http://windows.php.net/downloads/

REM path to directory you decompressed PHP .ZIP file into (no trailing \)
set phppath=c:\php


REM Clear current PHP handlers
%windir%\system32\inetsrv\appcmd clear config /section:system.webServer/fastCGI
REM The following command will generate an error message if PHP is not installed. This can be ignored.
%windir%\system32\inetsrv\appcmd set config /section:system.webServer/handlers /-[name='PHP_via_FastCGI']

REM Set up the PHP handler
%windir%\system32\inetsrv\appcmd set config /section:system.webServer/fastCGI /+[fullPath='%phppath%\php-cgi.exe']
%windir%\system32\inetsrv\appcmd set config /section:system.webServer/handlers /+[name='PHP_via_FastCGI',path='*.php',verb='*',modules='FastCgiModule',scriptProcessor='%phppath%\php-cgi.exe',resourceType='Unspecified']
%windir%\system32\inetsrv\appcmd set config /section:system.webServer/handlers /accessPolicy:Read,Script

REM Configure FastCGI Variables
%windir%\system32\inetsrv\appcmd set config -section:system.webServer/fastCgi /[fullPath='%phppath%\php-cgi.exe'].instanceMaxRequests:10000
%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/fastCgi /+"[fullPath='%phppath%\php-cgi.exe'].environmentVariables.[name='PHP_FCGI_MAX_REQUESTS',value='10000']"
%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/fastCgi /+"[fullPath='%phppath%\php-cgi.exe'].environmentVariables.[name='PHPRC',value='%phppath%\php.ini']"

Apache

There are several builds of Apache2 for Windows. The Apache builds of ApacheLounge are recommended, but other options include XAMPP, WampServer and BitNami, which provide automatic installer tools. PHP can be used on Apache through mod_php or mod_fastcgi. mod_php requires a TS build of Apache built with same version of Visual C and same CPU (x86 or x64).

选择编译版本

从 Windows 专用站点下载适合产品环境使用的 PHP 预编译版本: » http://windows.php.net/download/。All builds are optimized (PGO), and QA and GA releases are thoroughly tested.

There are 4 types of PHP builds:

  • Thread-Safe(TS) - use for single process web servers, like Apache with mod_php

  • Non-Thread-Safe(NTS) - use for IIS and other FastCGI web servers (Apache with mod_fastcgi) and recommended for command-line scripts

  • x86 - for 32-bits systems.

  • x64 - for 64-bits systems.

User Contributed Notes

md dot shahin dot hawladar at gmail dot com 09-Aug-2021 04:19
when using apache we will add this php8apache2_4.dll module in httpd.config file

example: LoadModule php_module C:/php/php8apache2_4.dll

I extracted php in "C" drive
klaussantana at gmail dot com 31-Jan-2021 03:34
If you're installing PHP 8.0.1 as Apache http server module, in httpd.conf you must use "php_module" in "LoadModule" directive instead of versioned names like in previous versions (aka, php5_module, php7_module, ...). Make the directive as follow:

LoadModule php_module "/path/to/php8apache2_4.dll"

I cracked my head over this...
PHP8中文手册 站长在线 整理 版权归PHP文档组所有