刚刚开始学习PHP时,一直使用phpstudy,后面发现很多东西自己单独配置安装会理解更深刻,所以自己总结了一下windows下开发环境的部署教程。

以前经常在CSDN和博客园看别人的教程,今天才注册博客园帐号,开通博客功能,第一次在网上分享自己的经验,写的不好的地方欢迎大家指正。

安装Nginx

首先在C盘根目录创建一个wnmp文件夹,在该文件夹里面创建一个www文件夹

访问http://nginx.org/en/download.html,下载nginx的Stable version,解压到wnmp里面,重命名为nginx

在C:\wnmp\nginx\conf目录下创建vhost文件夹

打开C:\wnmp\nginx\conf\nginx.conf

修改或添加如下配置

  1. #打开错误日志记录
  2. error_log logs/error.log;
  3. error_log logs/error.log notice;
  4. error_log logs/error.log info;
  5. pid logs/nginx.pid;
  6.  
  7. #配置nginx根目录
  8. location / {
  9.   root C:/wnmp/www;
  10.   index index.html index.htm;
  11.   autoindex on;
  12.   autoindex_exact_size off;
  13.   autoindex_localtime on;
  14. }
  15.  
  16. #让nginx支持PHP的设置
  17. location ~ \.php$ {
  18.   root C:/wnmp/www;
  19. fastcgi_pass 127.0.0.1:9000;
  20. fastcgi_index index.php;
  21. #这里$document_root指的是上面定义好的nginx根目录:C:/wnmp/www
  22. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  23. include fastcgi_params;
  24. }
  25.  
  26. #在http里面加入下面这一行扩展配置
  27. include vhost/*.conf;

安装PHP

访问 https://windows.php.net/downloads/releases/

选择你要安装的php版本,我一般选下图中的箭头指向的那种nts的

  1. 最近尝试安装 php7.3.1 发现openssl版本可能影响到了composer安装,安装composer时错误提示如下:
  2. composer SHA384 is not supported by your openssl extension
  3. openssl版本好像是是1.1.1a
  4. 不得已重装了7.2,欢迎知道原因的大神解惑!

下载后解压到wnmp\php文件夹中

将php.exe目录添加进环境变量path,方便全局使用php命令。

复制php.ini-development重命名为php.ini

修改或添加如下配置,视自己情况而定

  1. extension_dir = "C:\wnmp\php\ext"
  2. extension=php_curl.dll
  3. extension=php_gd2.dll
  4. extension=php_mysqli.dll
  5. extension=php_openssl.dll
  6. extension=php_pdo_mysql.dll
  7. date.timezone = Asia/Shanghai
  8. enable_dl = On
  9. cgi.force_redirect = 0
  10. fastcgi.impersonate = 1
  11. cgi.rfc2616_headers = 1

关联nginx和php

在C:\wnmp\nginx目录下创建start.bat内容如下

PS:下面代码里面的   RunHiddenConsole.exe    文件也是在这个目录下,目的是为了开启服务后自动隐藏命令行窗口

但是这里我不知道怎么上传这个文件。。。。。欢迎评论留言

  1. RunHiddenConsole.exe C:\wnmp\nginx\nginx.exe
  2. echo nginx started
  3. RunHiddenConsole.exe C:\wnmp\php\php-cgi.exe -b 127.0.0.1:9000 -c C:\wnmp\php\php.ini
  4. echo php started
  5. echo .......

在C:\wnmp\nginx目录下创建stop.bat内容如下

  1. @ECHO OFF
  2. taskkill /f /IM nginx.exe
  3. taskkill /f /IM php-cgi.exe
  4. EXIT

目录结构如下

此时双击start.bat可以开启nginx和php服务

双击stop.bat可以关闭这两个服务

在www目录下新建php脚本  <?php echo phpinfo();?>

运行start.bat 访问http://127.0.0.1/ 如下

点击info.php可查看PHP安装信息,这里就不截图了。

现在PHP和NGINX安装好了,接下来安装MYSQL。

 安装MYSQL

访问https://dev.mysql.com/downloads/windows/installer/8.0.html

直接下载最新的8.0版本,建议下载完整的安装包。

具体的安装步骤我参考的这个

https://blog.csdn.net/clouderpig/article/details/79556149

在安装mysql8的时候如果选择了密码加密,之后用客户端连接比如navicate,

会提示客户端连接caching-sha2-password,是由于客户端不支持这种插件

可以通过如下方式进行修改:

  1. #在命令行连接mysql,执行如下命令
      show databases;
  2.   use mysql
  3. #修改加密规则
  4. ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
  5. #更新密码(mysql_native_password模式)
  6. ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
  7. #刷新权限
  8.   flush privileges;

现在可以用navicate去连接数据库。

到这里WNMP环境安装就大功告成啦。

WIN10下WNMP开发环境部署的更多相关文章

  1. 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  2. VMware下Debian开发环境部署之常见问题记录

    本文讲介绍windows作为宿主机,linux虚拟机作为编译环境的开发环境搭建中最常用到的三个问题,详细描述了解决过程. 目录: 1.网路配置: 2.分辨率设置: 3.共享网盘设置: 1.网络设置,V ...

  3. windows下go开发环境部署 (sublime+gosublime+geocode)

    1.下载git.go和sublime免安装版 go下载地址:http://pan.baidu.com/s/1hq1mrDM#path=%252Fgo%252F1.5.2sublime下载地址:http ...

  4. IntelliJ IDEA Windows下Spark开发环境部署

    0x01 环境说明 本地 OS: windows 10 jdk: jdk1.8.0_121 scala: scala-2.11.11 IDE: IntelliJ IDEA ULTIMATE 2017. ...

  5. Win10下Java开发环境配置

    首先下载符合操作系统版本的jdk,比如64位的JDK8: 下载链接:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-down ...

  6. golang在linux下的开发环境部署[未完]

    uname -a Linux symons_laptop 4.8.2-1-ARCH #1 SMP PREEMPT Mon Oct 17 08:11:46 CEST 2016 x86_64 GNU/Li ...

  7. 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  8. linux 下 ifcfg-eth0 配置/CentOS_minimal安装和开发环境部署

    CentOS_minimal安装和开发环境部署:http://www.th7.cn/system/lin/201305/39002.shtml 网络接口配置文件 [root@localhost ~]# ...

  9. 一个CentOS7的开发环境部署,包括防火墙|VPN|多IP多网关|HTTP代理服务器设置等

    http://www.lenggirl.com/code/centos7.html layout: post title: "一个CentOS7的开发环境部署,包括防火墙|VPN|HTTP代 ...

随机推荐

  1. Congestion Avoidance in TCP

    Congestion Avoidance in TCP Consequence of lack of congestion control When a popular resource is sha ...

  2. 【Leetcode】【Medium】Unique Paths II

    Follow up for "Unique Paths": Now consider if some obstacles are added to the grids. How m ...

  3. ESXi中的虚拟机如何使用U盘和加密Key

    最近想在虚拟机中的主机使用通讯加密key来部署专门用于转发和加密的通讯前置机.故查询测试一下是不是能识别. 第一步:在虚拟宿主机上添加USB控制器,右键单击目标虚拟机,选中"编辑设置&quo ...

  4. vue + element-ui 制作tab切换(切换vue组件,踩坑总结)

    本篇文章使用vue结合element-ui开发tab切换vue的不同组件,每一个tab切换的都是一个新的组件. 1.vue如何使用element-ui 上一篇文章已经分享了如何在vue中使用eleme ...

  5. DatagramSocket类 会发生线程阻塞的方法

    遇到这个问题,还告诉别人错了,这里来Mark一下. receive()方法会使调用线程阻塞. Java使用DatagramSocket代表UDP协议的Socket,DatagramSocket本身只是 ...

  6. APUE1.11:系统调用 库函数

    区别是: system call:提供一种最小接口,而库函数通常提供比较复杂的功能.

  7. csr867x开发日记——常用软件工具介绍

    xIDE xIDE开发环境(编译器)可以被用于以下操作 查看代码 构建新应用 调试 运行 重新配置 修改 Universal Front End 通用前端 通用前端(UFE)工具用于配置DSP,ADK ...

  8. selenium 截图加上时间戳

    思路: 1  新建screenshot文件夹,不存在则创建该目录 2  在screenshot文件夹下新建当日日期文件夹,比如20190110:不存在则创建该目录 3  截图保存到当日文件夹,且截图文 ...

  9. 使用ArcSDE SQL操作怎么获得新对象的objectid、GUID

    arcgis9.3.1 现在大家很喜欢使用ArcSDE的SQL操作,这种方式在特殊的环境要求下显得比较方便,那么使用SQL操作最多的是读和写,而写最多的就是新建一个对象,那么翻译成SQL语言就是使用i ...

  10. 对HandlerExecutionChain类的理解分析

    HandlerExecutionChain类比较简单,好理解. ==================================================================== ...