2019独角兽企业重金招聘Python工程师标准>>>

运行环境为 windows server 2008 64位系统。
安装目录为 D:/wnmp

mysql5.7 下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
(本文选择的是5.7.25 | Microsoft Windows | All | Windows (x86, 64-bit), ZIP Archive)

php7.2 下载地址:https://windows.php.net/downloads/releases/php-7.2.17-nts-Win32-VC15-x64.zip
(本文选择的是 php-7.2.17-nts-Win32-VC15-x64)

nginx 下载地址:http://nginx.org/download/nginx-1.15.11.zip
(本文选择的是 主线版本 nginx/Windows-1.15.11 )

  • 安装 mysql 5.7

  1. 官网下载 mysql 5.7 压缩包,下载之后在 D:/wnmp 目下解压。
  2. 创建数据库配置文件:my.ini

在 D:/wnmp/mysql5.7 目录下创建 my.ini 文件,并写入以下内容

[client]
port=3306 # 设置3306端口
[mysql]
default-character-set=utf8 # 设置mysql客户端默认字符集[mysqld]
port=3306
basedir="D:\wnmp\mysql5.7"  # 设置mysql的安装目录
datadir="D:\wnmp\mysql5.7\data" # 设置mysql数据库的数据的存放目录,这里会存放数据库表
character-set-server=utf8 # 服务端使用的字符集默认为8比特编码的latin1字符集
default-storage-engine=MyISAM # 创建新表时将使用的默认存储引擎
#支持 INNODB 引擎模式。修改为 default-storage-engine=INNODB 即可。
#如果 INNODB 模式如果不能启动,删除data目录下ib开头的日志文件重新启动。sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
max_connections=512query_cache_size=0
table_cache=256
tmp_table_size=18Mthread_cache_size=8
myisam_max_sort_file_size=64G
myisam_sort_buffer_size=35M
key_buffer_size=25M
read_buffer_size=64K
read_rnd_buffer_size=256K
sort_buffer_size=256Kinnodb_additional_mem_pool_size=2Minnodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=1Minnodb_buffer_pool_size=47M
innodb_log_file_size=24M
innodb_thread_concurrency=8
  1. 初始化和启动 mysql 服务
  • 以管理员权限运行 cmd
  • 进入 D:/wnmp/mysql5.7/bin 目录下
  • 初始化,生成 data 文件。(执行以下命令任意一条,会发现在 D:/wnmp/mysql5.7 目录下生成了 data 文件夹)
(以下命令为不设置 root 密码,建议使用)
mysqld --initialize-insecure (以下命令会随机生成 root 密码,生成的密码在 my.ini 配置文件 datadir
项所在的目录中后缀名为 err 的文件中。比如在我的 my.ini 配置文件中,我的配置为
datadir="D:\wnmp\mysql5.7\data" 因此,我就需要在 D:\wnmp\mysql5.7\data
目录下寻找后缀名为 err 的文件,然后打开后缀名为 err 的文件,搜索 " A
temporary password is generated for root@localhost:" 即可看到随机生成的密码)mysqld --initialize
  • 安装 mysql 服务
mysqld -install
  • 启动 mysql 服务
net start mysql    (对应的服务关闭命令为 net stop mysql)
  • 登录 mysql (会提示输入密码,如果没有设置就直接回车)
mysql -u root -p
  • 设置 root 密码 (需要登录 mysql 后才可以执行以下命令。如下:将 mysql 的 root 账户密码设置为 123456)
// 方法01、
set password for root@localhost = password('123456');// 方法02、
mysqladmin -u root -p password 123456
  • 安装 nginx

  1. 官网下载 nginx 压缩包,下载之后在 D:/wnmp 目录下解压。
  2. 在 D:/wnmp/nginx 目录下直接双击 nginx.exe 可直接启动服务器,同样也可以执行以下命令来启动服务
// 启动服务
start nginx// 停止 nginx
nginx -s stop// 重新加载配置文件
nginx -s reload
  1. 直接在浏览器中输入 localhost 若出现 welcome to nginx 则证明安装 nginx 成功!
  • 安装 php7.2

  1. 官网下载 php7.2nts (非线程安全) 压缩包,下载之后在 D:/wnmp 目录下解压。
  2. 将 php.ini-development 文件复制一份并且修改文件名为 php.ini
  3. 修改 php.ini 配置文件
01、搜索关键字“date.timezone”,找到  ;date.timezone = 先去前面的分号再改为 date.timezone = Asia/Shanghai
开启 extension=php_mysql.dll 、 extension=php_mysqli.dll 等一系列所需扩展02、修改扩展 dll 文件所在目录
extension_dir="D:\wnmp\php-7.2.1-nts\ext"03、CGI 设置
enable_dl = On
cgi.force_redirect = 0
cgi.fix_pathinfo=1
fastcgi.impersonate = 1
cgi.rfc2616_headers = 1
  • 配置 nginx 使得 nginx 能够解析 php

  1. 在 D:\wnmp\nginx\conf 目录下,打开 nginx.conf 配置文件
  2. 修改 nginx.conf 配置文件
worker_processes  1;
events {worker_connections  1024;
}
http {include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;gzip  on;server {listen       80;server_name  localhost;location / {root   D:\wnmp\www;index  index.html index.htm index.php;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}location ~ \.php$ {root           D:\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;}}
}

其实主要修改了两处位置:
第一处:

location / {root   html;index  index.html index.htm;}

修改成了

location / {root   D:\wnmp\www;index  index.html index.htm index.php;}

第二处:

#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;#}

修改成了

location ~ \.php$ {root           D:\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;}
  1. 启动 php 内置的 cgi 程序,在 9000 端口监听 nginx 发过来的请求(在 cmd 命令中执行)
D:\wnmp\php7.2nts\php-cgi.exe -b 127.0.0.1:9000-c D:\wnmp\php7.2nts\php.ini
  1. 重启 nginx。
  2. 测试。在 D:\wnmp\www 目录下新建 index.php 文件,并且写一段 php 测试代码,然后用浏览器访问 localhost 看有无内容
  • Windows使用RunHiddenConsole一键启动nginx,php-cgi服务

  1. 首先百度网盘下载 RunHiddenConsole 软件,(网上很难得找,这里已经准备好了。)

链接地址为:https://pan.baidu.com/s/1G4xfGBiIc2KekHTlvOMCzA 提取码:prdk
RunHiddenConsole.exe 的作用是在执行完命令行脚本后可以自动关闭脚本,而从脚本中开启的进程不被关闭。

  1. 新建 start.bat 写入以下内容 (注意以下路径地址需要换成你自己的实际软件路径地址)
@echo off
set php_home=C:\wnmp\php-7.2.17-nts-Win32-VC15-x64
set nginx_home=C:\wnmp\nginx-1.15.10REM Windows 下无效
REM set PHP_FCGI_CHILDREN=5REM 每个进程处理的最大请求数,或设置为 Windows 环境变量
set PHP_FCGI_MAX_REQUESTS=1000echo Starting PHP FastCGI...
C:\wnmp\RunHiddenConsole\RunHiddenConsole.exe %php_home%\php-cgi.exe -b 127.0.0.1:9000 -c %php_home%\php.iniecho Starting nginx...
C:\wnmp\RunHiddenConsole\RunHiddenConsole.exe %nginx_home%\nginx.exe -p %nginx_home%
  1. 新建 stop.bat 写入以下内容
@echo off
echo Stopping nginx...
taskkill /F /IM nginx.exe > nul
echo Stopping PHP FastCGI...
taskkill /F /IM php-cgi.exe > nul
exit
  1. 另外,需要注意的是。不要把 mysql 的启动加入到以上脚本中,可能会导致 mysql 服务无法重启。至今我把 net start mysql 这条命令加入到 start.bat 脚本中,mysql 服务无法重启的原因至今没有找到。

转载于:https://my.oschina.net/u/3826187/blog/3037018

Windows下搭建wnmp相关推荐

  1. MQTT在Windows下搭建MQTT服务器

    MQTT 在Windows下搭建MQTT服务器 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u012163234/article/details/ ...

  2. Lisp语言: 在Windows下搭建CLisp环境

    有关Clisp环境的搭建,有人反映说在Ubuntu上搭建很麻烦,对于习惯使用Windows环境的同学们来讲不方便,所以在这里添加一篇Windows下搭建CLisp环境的文章. 其实在Windows下搭 ...

  3. Windows下搭建PySpark环境

    Windows下搭建PySpark环境 文章目录 Windows下搭建PySpark环境 前言 方法一 安装单机版Hadoop 安装单机版Spark PySpark环境整合 方法二 测试PySpark ...

  4. Android之Windows下搭建React Native Android开发环境(差不多搞了一天)

    Android之Windows下搭建React Native Android开发环境               穷逼买不起mac,但是他们都说React Native Android只能在mac下面 ...

  5. windows搭建python开发环境方法_04 Windows下搭建 Python 开发环境 - Python 入门教程

    前面两个小节中我们已经学习了在 MacOS 和 Ubuntu 中安装 Python 的开发环境.当然,作为用户基数最多的 Windows 操作系统,我们当然不会忘记,这节课我们就来学习下如何在 Win ...

  6. [原创]在windows下搭建基于apache的SVN环境

    [原创]在windows下搭建基于apache的SVN环境 1 软件下载: 在http://httpd.apache.org/download.cgi,下载: apache_2.2.14-win32- ...

  7. Windows下搭建ESP-IDF开发环境,适合ESP32/S2/C3/S3系列模组二次开发

    前言 本教程适用于以下两种用户: ①无Linux环境搭建经验或搭建Linux开发环境不成功: ②使用安信可windows一体化环境IDE V1.5开发环境搭建不成功: 本教程提供了windows下搭建 ...

  8. windows下搭建Apache+Mysql+PHP开发环境

    原文:windows下搭建Apache+Mysql+PHP开发环境 要求 必备知识 熟悉基本编程环境搭建. 运行环境 windows 7(64位); Apache2.2; MySQL Server 5 ...

  9. windows下搭建iphone开发环境

    在windows下搭建iphone开发环境,我是这样做的. 1. 安装虚拟机,并且在虚拟机中安装mac os: 2. 启动虚拟机的mac os, 然后安装 iphone sdk. 具体请参考以下几篇文 ...

  10. Windows下搭建个人博客(Apache+MySQL+PHP+WordPress)

    Windows下搭建个人博客(Apache+MySQL+PHP+WordPress) CSDN博客的广告实在是烦,就自己在阿里云上搭建了一个博客(http://www.corfox.cn),CSDN博 ...

最新文章

  1. Linux下截取指定时间段日志并输出到指定文件
  2. 《Android开发从零开始》——10. LinearLayout学习
  3. One-hot encoding 独热编码
  4. 机器学习入门|线性回归(二)
  5. 【渝粤教育】广东开放大学 商务交际听说 形成性考核 (31)
  6. linux 音频源码输出,linux下使用ffmpeg将amr转成mp3
  7. Windows设置程序开机自启动的几种方法(整理发布)
  8. 信息系统监理师备考知识点
  9. 三流大学和一流大学学生的简历有什么区别?
  10. 竞赛获奖系统解读:远场说话人确认中基于两阶段迁移学习解决域不匹配问题
  11. 对于栈内存和堆内存的理解
  12. 希腊神话、罗马神话与中国神话人物大比拼
  13. 米筐量化提供的数据质量怎么样?
  14. 利用Mycat分库分表操作
  15. CTime 和COleDateTime的常用操作和比较
  16. 浅论激光相控阵雷达在自动驾驶汽车中的应用
  17. 教你快速清除桌面图标阴影的痕迹【免费xp系统下载】
  18. Unity3d-粒子光环特效
  19. 运算符的使用数据读取语法
  20. Tim电脑端消息云端同步如何打开

热门文章

  1. 毕业设计 stm32车牌识别系统设计与实现 - 单片机 嵌入式
  2. 微信公众号历史文章采集
  3. 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明
  4. 【云驻共创】华为云数据库之大数据入门与应用(全)
  5. 隐私泄露距离你我有多远?APP扩大个人隐私收集,增大隐私保护难度
  6. linux top命令最详细解释
  7. 词霸天下---177 词根 【 -vast- = -wast- 空,荒废 】仅供学习使用
  8. mmorpg服务器物理,伸缩性MMORPG服务器架构的设计与实现
  9. 将Excel中的图片链接替换为图片
  10. OSChina 周二乱弹 —— 代码中的坑是怎么出现的?