空城-最好的安排
windows Nginx+PHP7+Mysql独立环境部署
windows Nginx+PHP7+Mysql独立环境部署

Nginx安装

  1. 下载 Nginx1.13解压版下载地址:http://nginx.org/download/nginx-1.13.7.zip
  2. 解压到D:\server目录下并重命名为nignx,完整目录为:D:\server\nginx
  3. 进入D:\server\nginx 双击执行nginx.exe(如执行成功,在进程中会有2个nginx进程,如失败请检查80端口是否被占用)
  4. 浏览器访问 localhost 即可访问默认目录
    //cdn.wm07.cn/nginx.jpg

PHP安装

  1. 下载 PHP源码包 php-7.1.12-nts-Win32-VC14-x86.zip
  2. 解压到D:\server目录下并重命名为php,完整目录为: D:\server\php
  3. 修改 D:\server\php\php.ini-development 文件名为 php.ini 至此,PHP与Nginx环境已搭建完毕!
  4. 为了把PHP在后台进程一直挂起,我们需要一个windows守护进程工具 RunHiddenConsole 下载到本地后完整目录为 D:\server\RunHiddenConsole.exe ,工具的作用可以把任务放到后台执行,不用一直在前端开着一堆DOS窗口了,这里把Nginx与PHP启动停止脚本写在一个批处理脚本中。
  5. Nginx和PHP的批处理脚本

    • 开启

      1
      2
      3
      4
      5
      6
      7
      8
      @echo off
      set PHP_FCGI_MAX_REQUESTS=1000

      echo Starting PHP FastCGI...
      D:\server\RunHiddenConsole "D:\server\php\php-cgi.exe" -b 127.0.0.1:9000 -c "D:\server\php\php.ini"

      echo Starting nginx...
      D:\server\RunHiddenConsole "D:\server\nginx\nginx.exe" -p "D:\server\nginx"
    • 停止

      1
      2
      3
      4
      5
      6
      @echo off 
      echo Stopping nginx...
      taskkill /F /IM nginx.exe > nul
      echo Stopping PHP FastCGI...
      taskkill /F /IM php-cgi.exe > nul
      exit
    • 重启

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      @echo off
      echo Stopping nginx...
      taskkill /F /IM nginx.exe > nul
      echo Stopping PHP FastCGI...
      taskkill /F /IM php-cgi.exe > nul

      set PHP_FCGI_MAX_REQUESTS=1000

      echo Starting PHP FastCGI...
      D:\server\RunHiddenConsole "D:\server\php\php-cgi.exe" -b 127.0.0.1:9000 -c "D:\server\php\php.ini"

      echo Starting nginx...
      D:\server\RunHiddenConsole "D:\server\nginx\nginx.exe" -p "D:\server\nginx"
    • 修改Nginx配置文件 将请求信息转发给 php 去进行处理

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      server {
      listen 80;
      server_name 127.0.0.1;
      location / {
      root D:/WWW;
      autoindex on;
      index index.html index.htm index.php;
      autoindex_exact_size off;
      autoindex_localtime on;
      }

      location ~ \.php$ {
      root D:/WWW;
      fastcgi_pass 127.0.0.1:9000;
      fastcgi_index index.php;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      include fastcgi_params;
      }
      }

Mysql安装配置

  1. 下载Mysql ZIP版本 Windwos 64bit下载地址 Windwos 32bit下载地址
  2. 解压到D:\server目录下并重命名为mysql,完整目录为 D:\server\mysql
  3. 新建一个配置文件my.ini放到mysql根目录,完整路径为 D:\server\mysql\my.ini

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    [mysql]
    # 设置mysql客户端默认字符集

    default-character-set=utf8
    [mysqld]
    #skip-grant-tables

    #设置3306端口

    port = 3306

    # 设置mysql的安装目录

    basedir=D:\server\mysql

    # 设置mysql数据库的数据的存放目录

    datadir=D:\server\mysql\data

    # 允许最大连接数

    max_connections=200

    # 服务端使用的字符集默认为8比特编码的latin1字符集

    character-set-server=utf8

    # 创建新表时将使用的默认存储引擎

    default-storage-engine=INNODB

    # sql_mode

    sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
  4. 保存时文件编码格式需要为ANSI(注:保存为UTF-8格式时可能会导致启动失败)

  5. 将Mysql的bin目录添加至系统环境变量Path,以WIN7为例
    右键我的电脑 -> 属性 -> 高级系统设置 -> 环境变量 ->从系统变量中找到Path
    添加mysql目录下的bin所在路径到Path的末端(不要覆盖Path原值,利用一个;号与上一个path路径断开):
    //cdn.wm07.cn/winpath.png
  6. 以管理员身份运行cmd命令行
    //cdn.wm07.cn/admincmd.png
  7. 输入命令

    • 安装:

      1
      mysqld -install
    • 初始化:

      1
      mysqld --initialize
    • 启动服务:

      1
      net start mysql
    • 进入mysql并初始化密码:

      1
      2
      3
      4
      5
      6
      mysql

      update mysql.user set authentication_string=password('root') where user='root';

      #退出mysql
      exit
  8. 修改Mysql配置文件 #skip-grant-tables 去掉#号,重新启动Mysql服务

    1
    2
    net stop mysql
    net start mysql
  9. 再次登录Mysql

    1
    2
    mysql -u root -p 
    #输入设置的密码
  10. 登录成功,设置新密码

    1
    SET PASSWORD = PASSWORD('your_new_password');

//cdn.wm07.cn/mysqlpwd.png

  1. 到此,所有的配置已完成,PS: skip-grant-tables参数的作用。 顾名思义,就是在启动mysql时不启动grant-tables,授权表。有什么用呢?当然是忘记管理员密码后有用。

本文出自个人博客 最好的安排 转载请注明出处!

发表评论

textsms
account_circle
email

空城-最好的安排

windows Nginx+PHP7+Mysql独立环境部署
Nginx安装 下载 Nginx1.13解压版下载地址:http://nginx.org/download/nginx-1.13.7.zip 解压到D:\server目录下并重命名为nignx,完整目录为:D:\server\nginx 进入D:\server\nginx 双击执…
扫描二维码继续阅读
2018-07-05