刚刚开始学习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

修改或添加如下配置

#打开错误日志记录
error_log logs/error.log;
error_log logs/error.log notice;
error_log logs/error.log info;
pid logs/nginx.pid; #配置nginx根目录
location / {
  root C:/wnmp/www;
  index index.html index.htm;
  autoindex on;
  autoindex_exact_size off;
  autoindex_localtime on;
} #让nginx支持PHP的设置
location ~ \.php$ {
  root C:/wnmp/www;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
#这里$document_root指的是上面定义好的nginx根目录:C:/wnmp/www
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
} #在http里面加入下面这一行扩展配置
include vhost/*.conf;

安装PHP

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

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

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

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

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

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

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

extension_dir = "C:\wnmp\php\ext"
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mysqli.dll
extension=php_openssl.dll
extension=php_pdo_mysql.dll
date.timezone = Asia/Shanghai
enable_dl = On
cgi.force_redirect = 0
fastcgi.impersonate = 1
cgi.rfc2616_headers = 1

关联nginx和php

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

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

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

RunHiddenConsole.exe C:\wnmp\nginx\nginx.exe
echo nginx started
RunHiddenConsole.exe C:\wnmp\php\php-cgi.exe -b 127.0.0.1:9000 -c C:\wnmp\php\php.ini
echo php started
echo .......

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

@ECHO OFF
taskkill /f /IM nginx.exe
taskkill /f /IM php-cgi.exe
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,是由于客户端不支持这种插件

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

#在命令行连接mysql,执行如下命令
  show databases;
  use mysql;
#修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
#更新密码(mysql_native_password模式)
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
#刷新权限
  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. 杨氏矩阵C++实现

    何为杨氏矩阵?这个网上的介绍很多,下面给出杨氏矩阵搜索算法: #include <iostream> using namespace std; // 杨氏矩阵查找算法 ], int N, ...

  2. Hyperledger Fabric 1.0 学习搭建 (四)--- 创建Fabric多节点集群

    4.1.配置说明 首先可以根据官方Fabric自带的e2e_cli列子中的集群方案来生成我们自己的集群,与案例不同的是我们需要把容器都分配到不同的服务器上,彼此之间通过网络来进行通信,网络构建完成后则 ...

  3. Mac os下profile设置

    Mac os环境下home目录下是没有profile文件的开启终端后,读取的是/etc/profile文件因为个人喜欢使用ll命令,mac默认并没有这个命令,所以使用如下方法设置别名 cp -rp / ...

  4. IE和Firefox浏览器CSS兼容性技巧整理

    转自:http://homepage.yesky.com/185/11484185all.shtml#p11484185 CSS兼容常用技巧(1) 更多精彩相关文章推荐: 各大浏览器 CSS3 和 H ...

  5. libevent-signal(1)

    现在已经知道,libevent有三种事件类型,分别是时钟事件,信号事件,i/o事件.今天就分析一下信号事件,下面是一个简单的信号事件demo #include <sys/types.h> ...

  6. 基于IDEA的JavaWeb开发环境搭建

    基于IDEA的JavaWeb开发环境搭建 基于IDEA的JavaWeb开发环境搭建 jdk下载安装配置环境变量 下载 安装 配置环境变量 下载安装激活使用IntelliJ IDEA 下载 安装 激活 ...

  7. 一些jar包的作用

    发项目的过程中,经常需要用到一写jar包,现在对其中的一写jar的作用,做下总结,也算是避免少引或者多引jar包吧,欢迎大家补充.谢谢. 1.apache的一写jar commons-collecti ...

  8. 如何删除Word 2010中的“向下箭头”

    原文:https://jingyan.baidu.com/article/e75aca85552916142edac614.html 在日常办公中,如果从网站复制了一段文字,直接粘贴到Word中时,常 ...

  9. Linux学习总结(七)-磁盘管理 du df fdisk

    一 命令df df,即disk free,可用来查看当前系统的挂载情况,也可以用来查看整体磁盘的使用情况df 不带参数,默认以KB单位显示df -i -----查看inodes 使用情况,要清楚理解i ...

  10. 开关WI-Fi显示列表

    实现效果: 使用方法: Show-NetList     #显示Wi-Fi列表 Show-NetList -off #关闭显示 (如图) 实现代码: function Show-NetList { P ...