zoukankan      html  css  js  c++  java
  • 本地手动一步步搭建WNMP环境(nginx+php+mysql) Windows平台


    环境:Windows 10 x64

    参考文章: WNMP完整教程      windows下PHP环境的搭建

    我自定义安装后的目录结构:

    +WNMP            

      ++MySQL_Server-8.0.13     

      ++nginx-1.15.8    

           ++php-7.3.1      

      ++www     

    wnmp                             WNMP总目录
    ├─MySQL_Server-8.0.13                 MySQL安装目录
    ├─nginx                        Nginx1.15.8安装目录
    ├─php                    PHP7.3.1安装目录
    ├─www                                 网站目录

     PATH环境变量:

    C:WNMPMySQL_Server-8.0.13in;
    C:WNMP
    ginx;
    C:WNMPphp;

    一、下载

    MySQL下载:https://www.mysql.com/why-mysql/windows/

    (我选的是MySQL Installer for Windows)关于web版和普通版的区别,只需要注意看下载页的说明。官网有帮助可以看。

    PHP下载:https://windows.php.net/download/

    我选的是x64最新版的Non Thread Safe版

    在Windows下是用FastCGI模式运行php,所以就没必要使用线程安全检查,选用非线程安全版效率会高一些。) 区别在此

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

    我选了 nginx/Windows-1.15.8

    二、安装/配置

    1,MySQL8的msi包安装

    更详细的安装可看Windows上安装MySQL

    安装过程我选了自定义安装,Server和一些示例帮助

    点开子项,点绿色的箭头就是添加功能。然后点右侧功能就能Advanced Options自定义安装路径

    我只改了安装路径为*WNMPMySQL_Server-8.0.13

    然后一路确定到Accounts and Roles那一步,好了,现在设置你想要的root账号密码,并添加一个常用非root用户,然后就一路确定到底。最后它会让你测试连接到你刚安装好的MySQL服务。最后本地MySQL服务器配置完成,它会给你一个log(可在log里搜索一下是否有错误)

    2,安装PHP

    解压php压缩包到wnmp目录下,复制粘贴php安装目录(我的是php)里的php.ini-development为php.ini

    [文章引用]
    逐一查找到如下代码修改并将前面的分号去掉(具体含义请谷歌百度必应) ;extension_dir = "ext"
      ;date.timezone = ;cgi.force_redirect = 1 ;cgi.fix_pathinfo=1 ;fastcgi.impersonate = 1 ;cgi.rfc2616_headers = 0 改为: extension_dir = "C:/WNMP/php/ext"  也就是 你的php安装目录/ext date.timezone = Asia/Shanghai
      cgi.force_redirect = 1 cgi.fix_pathinfo=1 fastcgi.impersonate = 1 cgi.rfc2616_headers = 0

    3,安装Nginx

    [文章引用自韶华倾负]
    1.将Nginx压缩包解压到建好的wnmp/nginx文件夹中;
    2.打开nginx/conf/nginx.conf进行配置
    server {
        listen       80;
        server_name  localhost;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location / {
            root   html;
            index  index.html index.htm;
        }
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #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;
        #}
    }
    
    注:
    【由于80和默认IIS冲突,我自己的改成了listen 82端口】

    配置文件修改: server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root C:/WNMP/www; index index.html index.htm index.php; } # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ .php$ { root C:/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; } } 保存后双击nginx.exe就可以直接运行Nginx服务器(双击nginx.exe),打开浏览器输入localhost就可以看到欢迎页。

    配置成功效果:

    附上Nginx命令

    切换到nginx目录重载nginx :

    nginx -s reload

    三、测试

    配置环境后查看版本号

    mysqld --version
    nginx -v
    php -v

    1,打开cmd,切换到php-cgi.exe所在目录:

    php-cgi.exe -b 127.0.0.1:9000 -c php.ini

    启动后最小化,再新开一个cmd,输入

    netstat -a|findstr "9000"

    查看9000端口是否被监听,是则说明cgi运行成功。

    2.在www目录下新建index.php
    <?php
    phpinfo();
    
    ?>

    测试MySQL:

    再nginx的html目录(即WNMPwww)下新建MySqltest.php

    <?php
    $link = new mysqli('localhost', 'root', 'root');
    if(!$link) {
        echo "FAILD!";
    } else {
        echo "OK!";
    }

    红色部分的请填写自己的服务器地址(我的是localhost:82)、数据库用户名、密码

    内容含义参考:https://www.w3schools.com/php/func_mysqli_connect.asp

    浏览器访问 http://localhost/sqltest.php (如果nginx用82端口,请访问http://localhost:82/sqltest.php)

    若结果如下,即红色部分填写出错(登录数据库失败)

    如果没问题,那本地WNMP就初步配置好了。

    附上:Nginx开发从入门到精通 淘宝工程师

    --------蓝天上的云_转载请注明出处.
  • 相关阅读:
    兼容ie6的ul水平居中对齐
    button小手设置 css的cursor
    virtualbox xp连不上网
    转发与重定向的区别(forward与redirect的区别)
    注册表单输入框检测
    html中块元素的居中。及兼容性
    centos下不重装php——给PHP添加新扩展库
    linux编译安装时常见错误解决办法
    Swift可选链
    jQueryMobile(一)
  • 原文地址:https://www.cnblogs.com/yucloud/p/10258274.html
Copyright © 2011-2022 走看看