第一步:下载nginx
到nginx官网下载合适的版本。
将下载的压缩包解压到合适的位置(我这里放到了F盘下,并将目录名称修改为nginx)。
第二步:下载php7
从php官网下载适合自己本地的版本 下载地址http://windows.php.net/download#php-7.0
下载后解压到合适位置(我解压到了F盘下,并将目录修改为nginx)
第三步:运行nginx
进入nginx目录,双击运行nginx。
OK,现在用浏览器打开localhost或127.0.0.1看看是否出现以下界面
如果出现表示运行成功
第四步:配置nginx
进入nginx目录下的conf目录,使用编辑器打开nginx.conf(这是nginx的配置文件)
在43行到46行中
location /{ root html; index index.html index.htm;}
修改网站路径及添加index.php默认页
location / { root D:/www/demo; index index.html index.htm inde.php; }
第63到71行
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #}
将前面的#注释去掉,修改root为网站目录再把“/scripts”改为“$document_root”,这里的“$document_root”就是指前面“root”所指的站点路径如下
location ~ \.php$ { root D:/www/demo; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; #fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
第五步:配置PHP7
将php目录下的php.ini-development重命名为php.ini
运行
F:\php\>php-cgi.exe -b 127.0.0.1:9000-c F:\php\php.ini
重新运行nginx
在D:\www\demo下新建一个phpinfo.php文件
<?php phpinfo();
浏览器中访问http://localhost/phpinfo.php和http://127.0.0.1/phpinfo.php
现在PHP已经可以正常运行了
第六步:创建启动批处理文件
首先先下载RunHiddenConsole.exe软件
创建nginx和PHP-cgi启动文件保存为start.bat
@echo off echo Starting PHP FastCGI... F:\RunHiddenConsole.exe F:\PHP\php-cgi.exe -b 127.0.0.1:9000-c F:\PHP\php.ini echo Starting nginx... F:\RunHiddenConsole.exe F:/nginx/nginx.exe -p F:/nginx
创建php-cgi和nginx停止文件 保存为stop.bat
@echo off echo Stopping nginx... taskkill /F /IM nginx.exe > nul echo Stopping PHP FastCGI... taskkill /F /IM php-cgi.exe > nul exit
补充:
有时候PHP-CGI会自动关掉,很可能请求数超过了规定的最大请求数造成的,我们可以将start.bat的内容修改为以下内容
@echo off set PHP_FCGI_MAX_REQUESTS=0 echo Starting PHP FastCGI... F:\RunHiddenConsole.exe F:\PHP\php-cgi.exe -b 127.0.0.1:9000-c F:\PHP\php.ini echo Starting nginx... F:\RunHiddenConsole.exe F:/nginx/nginx.exe -p F:/nginx
将最大请求数 PHP_FCGI_MAX_REQUESTS 设置为0