1. 官方下载地址
https://windows.php.net/downloads/releases/php-7.4.7-nts-Win32-vc15-x64.zip,根据自己须要下载安装 解压到D盘,得到路径:D:\wnmp\php
2. 配置

将php.ini-prodution重命名为php.ini(记得备份,以便有问题的时候还原),打开 查找 extension_dir,将;extension_dir = "ext"改为extension_dir = "D:\php\ext" 查找 cgi.fix_pathinfo,将;cgi.fix_pathinfo=1改为cgi.fix_pathinfo=1,也便是去掉前面的分号 查找 ;date.timezone = ,先去前面的分号再改为 date.timezone = Asia/Shanghai 查找 enable_dl = Off 改为 enable_dl = On 查找 ;cgi.force_redirect = 1 先去前面的分号再改为 cgi.force_redirect = 0 查找 ;fastcgi.impersonate = 1 去掉前面的分号 查找 ;cgi.rfc2616_headers = 0 先去前面的分号再改为 cgi.rfc2616_headers = 1 接下来启用扩展 查找extension,根据自身须要启用干系扩展,要利用mysql,必须启用extension=mysqli或者extension=pdo_mysql(去掉前面的分号便是启用)。 常用的还有bz2,curl,fileinfo,sockets等,没有启用的话运行一些PHP程序会涌现干系缺点提示。
NGINX1. 官方下载地址
http://nginx.org/download/nginx-1.19.0.zip,根据自己须要下载安装
2. 解压到D盘,得到路径:D:\wnmp\nginx3. 打开D:\wnmp\nginx\conf\nginx.conf (NGINX的配置文件) 找到location /,并按注释解释作相应修正:
location / {root html;#这是默认网站目录,可以修正为E:\wwwroot,便是将网站根目录改到E盘的wwwroot文件夹index index.html index.htm; #默认索引首页,加入index.php default.php}
完成后代码:
location / {root E:\wwwroot;index index.html index.htm default.html default.htm index.php default.php;}
查找location ~ .php$,去掉整段代码前面的注释号:#,将相应内容修正为:
location ~ \.php$ {root E:\wwwroot;fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;}
保存。
mysql1. 下载地址
https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-winx64.zip,根据自己须要下载安装 解压到D盘,得到路径:D:\wnmp\mysql 在D:\wnmp\mysql目录下新建mysql配置文件,mysql.ini,将如下内容粘贴进去:
[mysql]# 设置mysql客户端默认字符集default-character-set=utf8[mysqld]#设置3306端口port = 3306# 设置mysql的安装目录basedir=D:\mysql# 设置mysql数据库的数据的存放目录datadir=D:\mysql\data# 许可最大连接数max_connections=200# 做事端利用的字符集默认为UTF8character-set-server=utf8# 创建新表时将利用的默认存储引擎default-storage-engine=INNODBinnodb_file_per_table = 1#等待超时时间wait_timeout=172800#交互式连接超时时间interactive-timeout=172800
2. 安装,开始菜单–>系统–>命令提示符–>以管理员身份运行,如图所示,依次输入命令: mysqld -install命令实行后,提示:Service successfully installed,表示安装成功。 我在安装的时候报错,提示提示我找不到msvcr120.dll,须要重新安装做事,在人工解答中搜索dll修复,也修复了,但是仍旧没有办理。 涌现这个问题最紧张的缘故原由便是本地c++ 库组件有问题。末了我找到理解决方案,便是下载一个 DirectX修复工具 , 然后利用该软件进行修复即可。如果在修复的过程中,创造你本地已经安装过c++组件, 把本地的卸载掉,再重试下即可 传送门:传送门:DirectX修复工具 下载地址 链接:https://pan.baidu.com/s/18mRM95NVQw_FH8GlCkWvDw, 提取码:afde
3. 初始化,同样在命令提示符窗口,输入mysqld –initialize –console命令初始化,会天生一个初始root密码及在mysql安装目录天生数据库文件data目录,记录下来该密码:
4. 启动mysql做事,输入net start mysql命令5. 修正root初始密码 输入 mysql -uroot -p,然后输入前面记录的初始密码登录mysql 登录成功后即进入了mysql的命令行模式,输入命令: ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword' ; 命令实行成功后exit退出。mysql安装配置完成。
6. 下载RunHiddenConsole.rar 这个工具是用于隐蔽运行做事的窗口,很好用。如果每次开机手工进命令提示行启动nginx、php做事,关掉命令提示符窗口后相应做事就终止了,比较麻烦。 链接:https://pan.baidu.com/s/1hDnA36iUOF2EZlNmrkFDtw,提取码:afde 解压到D:\wnmp\common目录,将以下内容保存为start.bat批处理文件,用管理员身份运行即可自动运行mysql、php、nginx:
@echo offecho Starting mysql...net start mysqlecho Starting nginx..."D:/wnmp/common/RunHiddenConsole.exe" "D:/wnmp/nginx/nginx.exe" -p"D:/wnmp/nginx"echo Start nginx successecho Starting PHP Server ......................."D:/wnmp/common/RunHiddenConsole.exe" "D:\wnmp\php\php-cgi.exe" -b 127.0.0.1:9000 -c "D:\wnmp\php\php.ini"echo START PHP SERVER SUCCESSpauseExit
将以下内容保存为stop.bat批处理文件,以管理员身份运行,可自动停滞mysql、php、nginx做事:
@echo off echo Stopping nginx… taskkill /fi "imagename eq nginx.exe" /f> nulecho Stop nginx successecho Stopping PHP FastCGI...taskkill /fi "imagename eq php-cgi.exe" /f> nulecho Stop php-cgi successecho Stopping mysql...net stop mysqlpauseexit
其他问题
1. nginx+php环境访问显示access denied 办理方案 将php.ini中cgi.fix_pathinfo从0改为1。
2. windows 上nginx提示no input file specified 这个办理的迷迷糊糊的,末了该当是修正nginx.conf中的root 的路径办理的,如果碰着这个问题大家可以自己试一试。