在 Windows 搭建 Nginx+PHP+MySQL 运行环境

发布于 2022-03-29 12:58:17 字数 6874 浏览 1306 评论 0

主要流程

  1. 下载安装包
  2. 安装 Nginx
  3. 安装 PHP
  4. 连接 Nginx 和 PHP
  5. 编写启动脚本代替命令行启动 Nginx 和 PHP
  6. 安装 MySQL

步骤一、安装包下载

Nginx 下载: http://nginx.org/en/download.html


这里博主选择的稳定版,需要什么版本自己按需下载啊

PHP 下载: http://php.net/downloads.php


同上,选择自己需要的版本哦,博主的电脑是 64 位的,Nginx 需要选择非线程安全,所以下的第一个

MySQL 下载: https://dev.mysql.com/downloads/mysql/


这里博主选择的最新版,如果想下载其他版本,可以点击页面中的 Go to Download Page,有更多的选择哦

步骤二、安装 Nginx

  1. 在你的 C/D/E... ​ 盘里(随便哪一个,看你喜欢)建一个新文件夹命名为 wnmp,来用做我们的环境部署
  2. 再进去新建四个文件夹 nginx、php、mysql、www(站点)分别管理我们的各个部分
  3. 然后就可以把我们下载的 nginx 压缩包解压到 nginx 文件夹里面了

下面是解压后的文件

下一步,双击 nginx.exe ​,即可启动 nginx,打开浏览器,输入 localhost,看到下面的页面就代表安装成功了(如果没有启动成功,可能是因为端口的问题,打开 E:\wnmp\nginx\conf\nginx.conf ​,把里面的 listen 后的端口改一下即可)

步骤三、安装 PHP

把我们下载的 php 压缩包解压到 E:\wnmp\php ​ 里面,将 php.ini-development ​ 文件复制一份改名为 php.ini ​,指定 php 的 ext 路径:找到

;extension_dir = "./ext"

去掉前面的分号,并把里面的路径改为我们安装 php 文件夹中的 ext 目录,比如博主的 extension_dir = "E:\wnmp\php\ext"

支持 Nginx 找到

;cgi.fix_pathinfo=1

去掉前面的分号

支持 MySQL 找到

;extension = php_mysql.dll 
;extension = php_mysqli.dll

去掉前面的分号

启动 php 服务:在 E:\wnmp\php ​ 文件下以管理员身份打开 cmd 命令行,运行: php-cgi.exe -b 127.0.0.1:9000 -c E:/wnmp/php/php.ini ​(根据自己配置的端口和路径更改哦)

检测是否安装成功,管理员身份打开 cmd 下在 E:\wnmp\php ​ 下面执行 php -v 看到版本号即代表安装成功,如下图

步骤四、连接 Nginx 和 PHP

打开文件 E:\wnmp\nginx\conf\nginx.conf ​(最好先做一下备份)

建议更改我们的项目目录为绝对路径(博主在 E:\wnmp\ ​ 下新建了一个仓库 www),如下

        location / {
            root   E:/wnmp/www/localhost;
            index  index.html index.htm index.php;
        }

去掉注释内容支持访问 php 项目

        location ~ \.php$ {
            root           E:/wnmp/www/localhost;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
变量$document_root 指的是我们定义的 root 路径

在我们配置的目录下新建一个 E:\wnmp\www\localhost\phpinfo.php ​ 文件,里面写上如下代码(改完配置文件 nginx.conf ​后记得重启 nginx 哦)

<?php 
    phpinfo();

浏览器中输入 localhost/phpinfo.php ​ ,看到下面内容即代表配置成功

步骤五、编写启动脚本代替命令行启动 Nginx 和 PHP

每次启动 Nginx 和 PHP 服务都去命令行手动敲真的是太累了,所以我们利用 Windows 的 bat 文件写两个脚本(启动和关闭),双击操作,简直爽的不行

下载文件 RunHiddenConsole.exe ​: https://pan.baidu.com/s/1E6nnH0NL00wRnyij2RzA6Q 提取码:b490

编写启动服务文件: start.bat

REM REM 是 bat 文件的注释类似于 php 的//
REM 设置不输出命令
@ECHO off
REM 设置 Nginx 和 php-cgi 的目录
SET php_home=E:\wnmp\php\
SET nginx_home=E:\wnmp\nginx\

REM 输出状态
ECHO Starting PHP FastCGI...
REM 启动 php-cgi -b 端口 -c php.ini 位置
REM %php_home%为获取上面 set 的 php_home 的值
RunHiddenConsole %php_home%php-cgi.exe -b 127.0.0.1:9000 -c %php_home%php.ini
REM 输出状态
ECHO Starting nginx...
REM 启动 Nginx -p Nginx 的根目录
RunHiddenConsole %nginx_home%nginx.exe -p %nginx_home%

编写关闭服务文件: stop.bat

@ECHO off
ECHO Stopping nginx...  
REM 结束进程 /F 强制终止 /IM 指定的进程 
TASKKILL /F /IM nginx.exe
ECHO Stopping PHP FastCGI...
TASKKILL /F /IM php-cgi.exe
REM 关闭窗口
EXIT

三个文件放到同一目录,文件里面的路径也要配置成自己的文件路径,比如博主的这样的

如果一切顺利,接下来我们就可以通过双击 start.bat ​ 和 stop.bat ​ 文件来同时开启关闭 Nginx 和 PHP 服务了,如丝质般顺滑。

步骤六、安装 MySQL

解压我们下载好的 MySQL 安装包到 E:\wnmp\mysql ​ 里面,在这里新建一个文件 my.ini ​,再新建一个文件夹 data(如果有就不需要新建了)

编辑 my.ini,文件内容如下

[mysqld]
# 设置 3306 端口
port=3306
# 设置 mysql 的安装目录
basedir=E:\wnmp\mysql
# 设置 mysql 数据库的数据的存放目录
datadir=E:\wnmp\mysql\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为 UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
[mysql]
# 设置 mysql 客户端默认字符集
default-character-set=utf8
[client]
# 设置 mysql 客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8

以管理员身份打开 cmd,转到 E:\wnmp\mysql\bin ​,初始化命令(会生成一个临时密码,注意把临时密码记住)

mysqld --initialize --user=mysql --console
  • 输入 mysqld -install ​ 进行服务的添加
  • 输入 net start mysql ​ 启动服务
  • 输入 mysql -u root -p ​ 进行登录数据库,用你上面的密码登录

重新设置密码: ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码'; ​再及时生效一下: flush privileges;

退出: exit ​,再重启一下数据库: net stop mysql; net start mysql;

再管理员身份打开一个 cmd 窗口,重新登录一下成功,至此,我们的 wnmp 环境就部署好了!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84959 人气
更多

推荐作者

sevendreamyang

文章 0 评论 0

hsp

文章 0 评论 0

bobowiki

文章 0 评论 0

2282724674

文章 0 评论 0

蓝梦月影

文章 0 评论 0

南风起

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文