Windows 安装 PHP7.3 Nginx1.14.2 环境
安装 PHP
下载 PHP,解压到盘符的任意一目录(我是在 F:phpphp-7.3.1
)
PHP 版本介绍 当下使用最多的 php
版本就是 5.6
以及 PHP7
,(如果您还在使用 5 的版本,那么我建议您升级到7以上,目前本篇使用的是 PHP7.3)
而 Windows 下每一个版本又分为为 Non Thread Safe
和 Thread Safe
Non Thread Safe
非线程安全,在执行时不进行线程(Thread)安全检查(一般与Nginx
或IIS
搭配使用)Thread Safe
线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的 CGI 执行方式而耗尽系统资源(一般与apache
搭配使用)
php 常见的两种执行方式 ISAPI
, FastCGI
- ISAPI 执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI来执行PHP,建议选择Thread Safe版本。
- FastCGI 执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以FastCGI来执行PHP,建议选择Non Thread Safe版本。
基于以上 Nginx
选择 非线程安全
配置 PHP
- 进入解压的 PHP 目录 拷贝
php.ini-development
重命名为php.ini
- 编辑
php.ini
找到;cgi.fix_pathinfo=1
,将其注释去掉 cgi.fix_pathinfo=1
安装 Nginx
下载 Nginx 并解压到环境任意目录 (选择最新稳定版 Stable version
我是在 F:phpnginx-1.14.2
)
Nginx 环境介绍
Mainline version
当前开发版本Stable version
最新稳定版Legacy versions
历史稳定版
配置 Nginx
打开 Nginx
解压目录,进入到 conf/
目录下,编辑 nginx.conf
文件 修改 location /
在 index
上添加 index.php
location / {
root html;
index index.php index.html index.htm;
}
将如下注释去掉,并修改 fastcgi_param
为如下信息:
location ~ .php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
运行环境
运行 php
环境
进入到 php
解压目录,cmd
下运行如下语句:
php-cgi.exe -b 127.0.0.1:9000 -c phpphp.ini
运行 Nginx
环境
进入到 Nginx
解压目录,cmd
下运行如下语句:
nginx.exe -c confnginx.conf
进入到 Nginx
解压目录 html 下,新建一个 php
文件
// index.php
<?php
phpinfo();
然后打开浏览器测试一下,是否可以解析 php
运行以上命令,得保证两个命令窗口不能关闭,否则服务就中断了,因此我们可以使用脚本启动,达到关闭窗口服务也可以运行
脚本启动服务
首先下载一个 RunHiddenConsole.exe
,该文件作用是隐藏 cmd
窗口
点击 此处 下载 RunHiddenConsole.exe
编写两个批处理文件,用于开启 和关闭服务
编写 start.bat
代码语言:javascript复制@ECHO off
SET php_home=F:/php/php-7.3.1/
SET nginx_home=F:/php/nginx-1.14.2/
ECHO Starting PHP FastCGI...
RunHiddenConsole %php_home%php-cgi.exe -b 127.0.0.1:9000 -c %php_home%php.ini
ECHO Starting nginx...
RunHiddenConsole %nginx_home%nginx.exe -p %nginx_home%
编写 stop.bat
代码语言:javascript复制@ECHO off
ECHO Stopping nginx...
TASKKILL /F /IM nginx.exe
ECHO Stopping PHP FastCGI...
TASKKILL /F /IM php-cgi.exe
EXIT
将以上 3 个文件 放到你的某一个盘符下,例如我的 F:PHP
双击 .bat
即可启动或者关闭
您也可以让他开机自启动,直接使用计划任务 使用刚才编写的 start.bat
就可以啦