本地手动一步步搭建WNMP环境(nginx+php+mysql) Windows平台
环境:Windows 10 x64
参考文章: WNMP完整教程 windows下PHP环境的搭建
我自定义安装后的目录结构:
+WNMP
++MySQL_Server-8.0.13
++nginx-1.15.8
++php-7.3.1
++www
\wnmp WNMP总目录
├─MySQL_Server-8.0.13 MySQL安装目录
├─nginx Nginx1.15.8安装目录
├─php PHP7.3.1安装目录
├─www 网站目录PATH环境变量:
C:\WNMP\MySQL_Server-8.0.13\bin;C:\WNMP\nginx;C:\WNMP\php;
一、下载
MySQL下载:https://www.mysql.com/why-mysql/windows/
(我选的是MySQL Installer for Windows)关于web版和普通版的区别,只需要注意看下载页的说明。官网有帮助可以看。
PHP下载:https://windows.php.net/download/
我选的是x64最新版的Non Thread Safe版
(在Windows下是用FastCGI模式运行php,所以就没必要使用线程安全检查,选用非线程安全版效率会高一些。) 区别在此
Nginx下载:https://nginx.org/en/download.html
我选了 nginx/Windows-1.15.8
二、安装/配置
1,MySQL8的msi包安装
更详细的安装可看Windows上安装MySQL
安装过程我选了自定义安装,Server和一些示例帮助
点开子项,点绿色的箭头就是添加功能。然后点右侧功能就能Advanced Options自定义安装路径
我只改了安装路径为*WNMP\MySQL_Server-8.0.13

然后一路确定到Accounts and Roles那一步,好了,现在设置你想要的root账号密码,并添加一个常用非root用户,然后就一路确定到底。最后它会让你测试连接到你刚安装好的MySQL服务。最后本地MySQL服务器配置完成,它会给你一个log(可在log里搜索一下是否有错误)
2,安装PHP
解压php压缩包到wnmp目录下,复制粘贴php安装目录(我的是php)里的php.ini-development为php.ini
[文章引用]
逐一查找到如下代码修改并将前面的分号去掉(具体含义请谷歌百度必应)
;extension_dir = "ext"
;date.timezone =
;cgi.force_redirect = 1
;cgi.fix_pathinfo=1
;fastcgi.impersonate = 1
;cgi.rfc2616_headers = 0
改为:
extension_dir = "C:/WNMP/php/ext" 也就是 你的php安装目录/ext
date.timezone = Asia/Shanghai
cgi.force_redirect = 1
cgi.fix_pathinfo=1
fastcgi.impersonate = 1
cgi.rfc2616_headers = 0
3,安装Nginx
[文章引用自韶华倾负]1.将Nginx压缩包解压到建好的wnmp/nginx文件夹中;
2.打开nginx/conf/nginx.conf进行配置
将 server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
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;
#}
} 注:
【由于80和默认IIS冲突,我自己的改成了listen 82端口】 配置文件修改:
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root C:/WNMP/www;
index index.html index.htm index.php;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root C:/WNMP/www;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
保存后双击nginx.exe就可以直接运行Nginx服务器(双击nginx.exe),打开浏览器输入localhost就可以看到欢迎页。
配置成功效果:

附上Nginx命令
切换到nginx目录重载nginx :
nginx -s reload
三、测试
配置环境后查看版本号
mysqld --version
nginx -v
php -v
1,打开cmd,切换到php-cgi.exe所在目录:
php-cgi.exe -b 127.0.0.1: -c php.ini
启动后最小化,再新开一个cmd,输入
netstat -a|findstr ""
查看9000端口是否被监听,是则说明cgi运行成功。
2.在www目录下新建index.php
<?php
phpinfo(); ?>
测试MySQL:
再nginx的html目录(即WNMP\www)下新建MySqltest.php
<?php
$link = new mysqli('localhost', 'root', 'root');
if(!$link) {
echo "FAILD!";
} else {
echo "OK!";
}
红色部分的请填写自己的服务器地址(我的是localhost:82)、数据库用户名、密码
内容含义参考:https://www.w3schools.com/php/func_mysqli_connect.asp
浏览器访问 http://localhost/sqltest.php (如果nginx用82端口,请访问http://localhost:82/sqltest.php)
若结果如下,即红色部分填写出错(登录数据库失败)

如果没问题,那本地WNMP就初步配置好了。
附上:Nginx开发从入门到精通 淘宝工程师
本地手动一步步搭建WNMP环境(nginx+php+mysql) Windows平台的更多相关文章
- ubuntu14.04搭建LAMP环境(nginx,php,mysql,linux)详解
最近更换开发环境至ubuntu,整理开发环境和常用软件的安装配置(更新排版) 以下安装过程经过多次操作得出,参照步骤进行操作即可 一.LAMP基本环境搭建 1 切换root账号 sudo su 2,安 ...
- 一步步搭建react-native环境(苹果OS X)
因重新升级了系统,一步步搭建react-native环境. 1.安装Homebrew 打开终端命令->ruby -e "$(curl -fsSL https://raw.githubu ...
- CentOS7.X安装LMMP环境Nginx+PHP+Mysql详解
前言: 作为PHP开发者,我们常用的线上环境就是LNMP,合理的搭建也是必须掌握的技能,下面就利用源码的方式详细介绍下LNMP环境Nginx+PHP+Mysql的详细搭建步骤: 版本说明: Nginx ...
- vue打包之后在本地运行,express搭建服务器,nginx 本地服务器运行
一.使用http-server 1.安装http-server npm install -g http-server 2.通过命令进入到dist文件夹 3.运行http-server 以上在浏览器输入 ...
- centos7.2环境yum方式快速搭建lnmp环境nginx+mariadb+php-fpm
centos7.2环境yum方式安装nginx+mariadb+php-fpm 1.安装lnmp环境 安装epel源 yum install -y epel-release 安装 MySQL + PH ...
- 搭建eclipse环境下 Nutch+Mysql 二次开发环境
最近看了下Nutch,目前Nutch最新版本2.3.1,支持Hbase.MongoDB等存储,但在搭建和测试过程中发现对Mysql 的支持好像有点问题. 后来将Nutch版本改为2.2.1.基于Nut ...
- 阿里云EDAS在本地CentOS7.5 系统搭建测试环境,部署配置中心以及部署多个war包
参考阿里云的EDAS开发文档: 使用 Ali-Tomcat 开发应用 我们自己在内网搭建CentOS7 的测试环境,需要的资源如下: Ali-Tomcat Pandora 容器 EDAS 配置中心安装 ...
- Centos 6.5 搭建php环境(nginx+mariadb+php7)
1.mariaDb vim /etc/yum.repos.d/MariaDB.repo [mariadb] name = MariaDB baseurl = http://yum.mariadb.or ...
- 1. mac 手动安装nodejs搭建vue环境
为什么选择手动安装nodejs呢? 因为使用mac自动安装还要更新homebrew,还要安装xcode tool, 太费劲了,不如手动安装, 卸载起来也方便 再一个, 我是后台开发者, 对前端页面, ...
随机推荐
- Mac终端常用快捷键
Ctrl + a 跳到行首Ctrl + e 跳到行尾Ctrl + d 删除一个字符,相当于通常的Delete键(命令行若无所有字符,则相当于exit:处理多行标准输入时也表示eof)Ctrl + h ...
- vue+element 动态表单验证
公司最近的项目有个添加动态表单的需求,总结一下我在表单验证上遇到的一些坑. 如图是功能的需求,这个功能挺好实现的,但是表单验证真是耗费了我一些功夫. vue+element在表单验证上有一些限制,必须 ...
- Java-100天知识进阶-GC种类-知识铺(六)
知识铺: 致力于打造轻知识点,持续更新每次的知识点较少,阅读不累.不占太多时间,不停的来唤醒你记忆深处的知识点. 一.GC回收器的 4个指标: 1.Throughput,非gc时间与总运行时间的比重. ...
- [STL] UVA 10815 安迪的第一个字典 Andy's First Dictionary
1.set 集合 哦....对了,set有自动按照字典序排序功能..... 声明和插入操作 #include <cstdio> #include <vector> #inclu ...
- jenkins环境自动部署
https://my.oschina.net/tonystark/blog/1920889 示例脚本: #!/bin/bash #export BUILD_ID=dontKillMe这一句很重要,这样 ...
- Microsoft.Extensions.DependencyInjection 之一:解析实现
[TOC] 前言 项目使用了 Microsoft.Extensions.DependencyInjection 2.x 版本,遇到第2次请求时非常高的内存占用情况,于是作了调查,本文对 3.0 版本仍 ...
- Logstash:多个配置文件(conf)
Logstash:多个配置文件(conf) 对于多个配置的处理方法,有多个处理方法: 多个pipeline 一个pipleline处理多个配置文件 一个pipeline含有一个逻辑的数据流,它从inp ...
- Ext.NET-WebForm之TreePanel组件
开启VS2017创建WebForm项目 打开NuGet搜索Ext.NET并安装 安装后可见 还自动帮我们创建了一个页面和文件夹项 打开自动添加的页面Ext.NET.Default.aspx,运行项目出 ...
- 使用xkbeancomparator对比javabean,生成操作记录
xkbeancomparator是一个 java bean 对比修改并输出差异的工具.github地址 适用场景:用户编辑提交时,需要记录修改内容,修改前后的值对比,生成操作记录:可以选择记录的字段和 ...
- Flask--闪现、中间件、多app应用
目录 闪现 源码 案例 中间件 自定义局部中间件 自定义全局装饰器 多app应用 闪现 flask提供了一个非常有用的flash()函数,它可以用来"闪现"需要提示给用户的消息,比 ...