常用基础 - Windows下配置PHP

  • 作者:KK

  • 发表日期:2017.2.16


要点速读

  • Windows下有三种配置方式来实现在Apache里运行PHP

  • 通常用Apache ModuleFastCGI这两种模式来配置

  • 老司机都懂得直接下载phpStudy、WAMP和XAMPP什么的套件直接用就是,不给你费劲慢慢配


有三种配置方式

Windows下在Apache服务器里配置运行PHP程序有三种方式

  1. 最基础的CGI 模式

  2. FastCGI 模式(你就当作是更好的CGI模式吧)

    其中要说一下的是,FastCGI模式不是PHP特有的东西,是流行http服务器的一个新的CGI实现标准,就看相关的服务端语言是否支持这个模式了,当然PHP就支持了

  3. 为Apache服务器定制的Apache Module 模式(因为Apache的各种功能是由一个个模块提供的,所以这种情况下运行PHP也定义为一个特定模块提供的PHP运行功能)


Apache Module 模式

这是Windows下比较流行的配置模式,运行比较稳定

以配置如今最新的PHP7版本为例

  1. 先进入http://php.net/downloads.php找到PHP7的下载链接,这里要点下面的Windows Downloads

  2. 进入Windows程序包的下载地址,其中要选择Thread Safe(线程安全)版下载

  3. 下载后比如解压到D:\php7-ts这个目录,里面应该能找到php7apache2_4.dll,如果下载非线程安全版是不会有这个文件的

  4. 将“D:\php7-ts”里面的php.ini-development(这是一个开发版本的配置)复制一份重命名为php.ini,这样才准备好了php配置

  5. 在Apache的httpd.conf添加如下三行内容

    LoadModule php7_module D:/php-ts/php7apache2_4.dll
    AddHandler application/x-httpd-php .php
    PHPIniDir D:/php-ts
    

配置完毕,在主机目录下放个php文件写点PHP代码就能执行了


FastCGI模式

线程安全和非线程安全版本都能以这个模式进行配置,继续使用上面Apache Module模式的线程安全版本来配置吧,记得清掉上面在httpd.conf追加的三行配置

换成这样的配置即可:

LoadModule fcgid_module modules/mod_fcgid.so
FcgidInitialEnv PHPRC D:/php-ts
AddHandler fcgid-script .php
FcgidWrapper D:/php-ts/php-cgi.exe .php

CGI 模式

这个不常用就不讲了,有需要的话请看官方文档