# 下载 php + nginx
nginx: http://nginx.org/en/download.html
php:
# 配置nginx
下载解压
不要双击nginx.exe
启动,使用cmd
启动
nagin
的路径是: C:\dome\nginx-1.18.0
Win + R
,输入cmd
进入命令行窗口
1、进入 nginx
文件夹
cd C:\dome\nginx-1.18.0
2、启动 nginx
start nginx
3、打开链接测试是否启动成功
访问: http://localhost/
启动失败常见问题:端口被占用(关闭占用端口的进程 || 更换
nginx
启动端口)
# 配置php
下载解压
php 的路径是: C:\dome\php-5.6.40-Win32-VC11-x64
下载运行库VC11
: https://www.microsoft.com/zh-CN/download/details.aspx?id=30679
1、进入文件夹根目录找到 php.ini-production
修改为 php.ini
2、编辑php.ini
3、搜索"extension_dir"
,找到: ;extension_dir = "ext"
先去前面的分号再改为 extension_dir = "./ext"
修改前:
; extension_dir = "ext"
修改后:
extension_dir = "./ext"
4、搜索"date.timezone"
,找到: ;date.timezone =
先去前面的分号再改为 date.timezone = Asia/Shanghai
修改前:
;date.timezone =
修改后:
date.timezone = Asia/Shanghai
5、搜索"enable_dl"
,找到: enable_dl = Off
改为 enable_dl = On
修改前:
enable_dl = Off
修改后:
enable_dl = On
6、搜索"cgi.force_redirect"
,找到: ;cgi.force_redirect = 1
先去前面的分号再改为 cgi.force_redirect = 0
修改前:
;cgi.force_redirect = 1
修改后:
cgi.force_redirect = 0
7、搜索"fastcgi.impersonate"
,找到: ;fastcgi.impersonate = 1
去掉前面的分号
修改前:
;fastcgi.impersonate = 1
修改后:
fastcgi.impersonate = 1
8、搜索"cgi.rfc2616_headers"
,找到: ;cgi.rfc2616_headers = 0
先去前面的分号再改为 cgi.rfc2616_headers = 1
修改前:
;cgi.rfc2616_headers = 0
修改后:
cgi.rfc2616_headers = 1
9、搜索"php_mysql"
,找到: ;extension=php_mysql.dll
和extension=php_mysqli.dll
去掉前面的";"
extension=php_mysql.dll
和extension=php_mysqli.dll
(支持MYSQL数据库)
修改前:
;extension=php_mysql.dll
;extension=php_mysqli.dll
修改后:
extension=php_mysql.dll
extension=php_mysqli.dll
修改完 Ctrl + S
保存
# 编辑nginx.conf
1、进入 C:\dome\nginx-1.18.0\conf
,编辑 nginx.conf
2、去掉 php 模块的注释,在 location
添加 index.php
修改前:
......
http {
......
server {
listen 80;
server_name localhost;
...
location / {
root html/phpDome;
index index.html index.htm;
}
...
# 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;
#}
...
}
......
}
修改后:
......
http {
......
server {
listen 80;
server_name localhost;
...
location / {
root html/phpDome;
index index.html index.htm index.php;
}
...
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root html/phpDome;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}
...
}
......
}
/phpDome
是我自己新建的项目文件夹
phpDome
├─html
│ ├─phpDome
│ │ │ index.php
index.php
<?php
phpinfo();
?>
# 运行 php-cgi.exe
Win + R
,输入cmd
进入命令行窗口
1、进入 php
文件夹
cd C:\dome\php-5.6.40-Win32-VC11-x64
2、启动 nginx
C:/dome/php-5.6.40-Win32-VC11-x64/php-cgi.exe -b 127.0.0.1:9000 -c C:/dome/php-5.6.40-Win32-VC11-x64/php.ini
注意这里的路径是
/
不是\
执行完命令之后,不要关闭窗口!
# 重启nginx
Win + R
,输入cmd
进入命令行窗口
1、进入 nginx
文件夹
cd C:\dome\nginx-1.18.0
2、关闭 nginx
nginx -s quit
3、启动 nginx
start nginx
4、访问: http://localhost/
出现php的界面即为配置成功
如果访问失败,注意检查
php-cgi.exe
是否运行中
# 配置 php-cgi.exe
后台运行
上面说了,开启
php-cgi.exe
后不能关闭命令行窗口
所以我们可以把窗口隐藏起来在后台运行
1、下载 RunHiddenConsole
RunHiddenConsole: https://redmine.lighttpd.net/attachments/660/RunHiddenConsole.zip
RunHiddenConsole 可以帮我们把命令行窗口隐藏起来
2、解压 RunHiddenConsole.zip
3、新建 RunHiddenConsole
文件夹
把解压后的 RunHiddenConsole.exe
移到 RunHiddenConsole
文件夹
在RunHiddenConsole
文件夹内新建start.bat
start.bat
@echo off
set php_home=C:/dome/php-5.6.40-Win32-VC11-x64
REM Windows 下无效
REM set PHP_FCGI_CHILDREN=5
REM 每个进程处理的最大请求数,或设置为 Windows 环境变量
set PHP_FCGI_MAX_REQUESTS=1000
echo Starting PHP FastCGI...
RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
记得把 php_home 修改成你的php路径
在RunHiddenConsole
文件夹内新建end.bat
end.bat
@echo off
echo Stopping PHP FastCGI...
taskkill /F /IM php-cgi.exe > nul
exit
关掉我们上面开的 php-cgi.exe 运行窗口,然后双击 start.bat 即可,这个时候 php-cgi.exe 就会在后台运行了
# 开启curl
# 开启gd2
参考博客: