美文网首页PHP从1到入门
WNMP 开发环境搭建

WNMP 开发环境搭建

作者: 梦炫影翼 | 来源:发表于2018-01-29 18:14 被阅读0次

    安装 PHP


    • PHP 官网:http://windows.php.net/download/
    • 下载 php7.2 :http://windows.php.net/downloads/releases/php-7.2.1-nts-Win32-VC15-x64.zip
    • 解压至 D:\server\php\
      为了方便以后在命令行使用 php ,将 D:\server\php\ 路径放到系统环境变量 Path 中
    • 复制 php.ini-development 并重命名为 php.ini
    • 修改 php.ini
      1. 配置php扩展目录:搜索 “extension_dir” ,修改为 extension_dir = "D:\server\php\ext"
      2. 设置php时区:搜索“date.timezone”,修改为 date.timezone = Asia/Shanghai
      3. 设置搜索“cgi.fix_pathinfo”,修改为 cgi.fix_pathinfo=1
        注意:如果你的 php 是 7.0.12 以下的版本设置cgi.fix_pathinfo=1是存在漏洞的
        详情可查看:http://www.freebuf.com/vuls/124519.html

    安装 Nginx


    • Nginx 官网: http://nginx.org/en/download.html 下载稳定版本的 nginx/Windows
    • 解压 nginx-1.12.2.zip 到 D:\server\nginx\
    • 一些简单的命令
    • 定位至 nginx 目录
     cd D:\server\nginx
    
    • 启动 nginx
    start  .\nginx.exe 
    
    • 停止 nginx
    .\nginx.exe -s stop
    

    或者

    .\nginx.exe -s quit
    
    • 重载 nginx (修改配置文件后用该命令可重新加载配置文件)
    .\nginx.exe -s reload
    
    • 查看 nginx 版本
    .\nginx.exe -v
    
    • 修改 nginx 配置文件,使之支持解析 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           html;
           fastcgi_pass   127.0.0.1:9000;
           fastcgi_index  index.php;
           fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
           include        fastcgi_params;
    }
    

    配置部分就修改好了

    • 开启 phpcgi
    PS D:\server\php> php-cgi.exe -b 127.0.0.1:9000 -c D:\server\php\php.ini
    
    • 重载nginx配置
    PS D:\server\nginx> .\nginx.exe -s reload
    
    • 创建 D:\server\nginx\html\phpinfo.php 文件
    <?php 
      phpinfo();
    

    MySQL 的安装


    [mysqld]
     basedir=D:\\server\\mysql
     datadir=D:\\server\\msyql\\data
    
    • 执行 mysql 初始化命令
    PS D:\server\mysql\bin> .\mysqld.exe --defaults-file=D:\server\mysql\my.ini --initialize-insecure
    

    有2种方式使用 mysql (以下选一种即可)

    第一种:mysql 作为系统服务运行

    • 安装 mysql 服务
    PS D:\server\mysql\bin> .\mysqld --install
    

    安装成功后直接在系统服务中启动 mysql 即可。
    为了方便mysql的操作,也可以将 mysql bin目录 D:\server\mysql\bin 加入系统环境变量
    mysql 除了可以在系统服务运行,也可用从命令行启动

    • 卸载 mysql 服务
    PS D:\server\mysql\bin> .\mysqld --remove
    

    第二种:从命令行运行 mysql
    这里我已经把 mysql的bin 目录加入了系统环境变量

    • 运行 mysql
    PS C:\WINDOWS\system32> start mysqld
    
    • 进入 mysql 命令界面
    PS C:\WINDOWS\system32> mysql -u root -p
    

    初始化的时候配置项 --initialize-insecure 所以这里的密码默认为空

    • 停止 mysql 命令行服务
     PS C:\WINDOWS\system32> mysqladmin.exe -u root shutdown
    

    安装后的设置和配置

    • 设置密码
      在系统服务或者命令行启动 mysql 后,进入 mysql 命令界面,执行命令
    mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
    

    其中 123456 为修改的新密码
    输入命令 exit 退出后,则需要设置的新密码才能进入 mysql 命令行界面了


    其他


    • 为了方便启动开发环境可以写一个简单的 bat 脚本:server.bat , 内容如下
      因为启动 php-cgi 出现一个常驻的 命令窗口 ... 关掉之下php-cgi也会停止,无奈之下只能下载RunHiddenConsole,
      下载地址:https://pan.baidu.com/s/1eT63LBG
      解压后也放至 D:\server\ 下
    @ECHO OFF
    echo start nginx ......
    d:
    cd D:\server\nginx\
    start .\nginx.exe
    echo start mysql ......
    cd D:\server\mysql\bin\
    start .\mysqld.exe
    echo start php ......
    cd D:\server\
    .\RunHiddenConsole.exe "D:\server\php\php-cgi.exe" -b 127.0.0.1:9000 -c D:\server\php\php-cgi.exe\php.ini
    
    • 在随便写个停止的脚本 stop.bat
    @ECHO OFF
    taskkill /F /IM nginx.exe
    taskkill /F /IM php-cgi.exe
    taskkill /F /IM mysqld.exe
    

    现在双击 server.bat 就可以同时开始nginx 和 MySQL 和 php了
    双击 stop.bat 就可以关闭他们

    相关文章

      网友评论

        本文标题:WNMP 开发环境搭建

        本文链接:https://www.haomeiwen.com/subject/fsqfzxtx.html