• 技术文章 >后端开发 >php教程

    WNMP(Windows + Nginx + PHP + MySQL) 安装

    不言不言2018-04-20 14:51:53原创16579

    这篇文章介绍的内容是关于WNMP(Windows + Nginx + PHP + MySQL) 安装,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

    最近在开发一个新的项目,环境用的是:

    Nginx1.10.3 下载地址: http://nginx.org/en/download.html 下载windows版本包

    PHP 7.1.1 下载地址:http://windows.php.net/download/ 下载windows版本包

    MySQL 5.7.17 下载地址 :https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.17-winx64.zip

    PS: 这里MySQL我是用的 WampServer 带的MySQL,所以就没有重复安装。具体配置,稍后说。

    这是WampServer的下载地址 : https://sourceforge.net/projects/wampserver/

    东西准备完了,那么开始安装了。

    一、Nginx 安装

    1. 准备一个目录, 我这里是 E:\development\nginx这里nginx目录下主要是为了以后方便拓展多版本的Nginx服务

    2. 运行该文件夹(nginx-1.10.3)下的nginx.exe

    3.测试是否启动nginx。打开浏览器访问http://localhosthttp://127.0.0.1,看看是否出现“Welcome to nginx!”,出现的证明已经启动成功了。没有启动的话,看看80端口有占用没

    注意:该网站的默认目录在 E:\development\nginx\nginx-1.10.3\html

    二、PHP安装

    nginx配置文件是conf文件夹里的nginx.conf

    1. 创建一个PHP目录 E:\development\php (同样放在PHP的目录下,以后方便拓展)

    2. 修改大概第43~45行之间的

                location /{
                root   E:/proj; ;这里改成你自己的目录
                index  index.html index.htm;}

    修改网站文件的路径,以及添加index.php的默认页。

            location / {
                root   E:/Projl;
                index  index.html index.htm inde.php;
            }

    3. 支持php的设置

    修改大概在第63-71行的


    复制代码

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

    复制代码

    先将前面的“#”去掉,同样将root html;改为root E:/Proj; 再把“/scripts”改为“$document_root”,这里的“$document_root”就是指前面“root”所指的站点路径,这是改完后的。

    三、修改为php.ini。

    搜索“extension_dir”,找到: e;xtension_dir = "ext" 先去前面的分号再改为 extension_dir = "C:\wnmp\php\ext"

    搜索“date.timezone”,找到:;date.timezone = 先去前面的分号再改为 date.timezone = Asia/Shanghai

    搜索“enable_dl”,找到:enable_dl = Off 改为 enable_dl = On

    搜索“cgi.force_redirect” ;cgi.force_redirect = 1 先去前面的分号再改为 cgi.force_redirect = 0

    搜索“fastcgi.impersonate”,找到: ;fastcgi.impersonate = 1 去掉前面的分号

    搜索“cgi.rfc2616_headers”,找到:;cgi.rfc2616_headers = 0 先去前面的分号再改为 cgi.rfc2616_headers = 1

    搜索“php_mysql”,找到:”extension=php_pdo_mysql.dll和extension=php_mysqli.dll 去掉前面的“;”extension=php_mysql.dll和extension=php_mysqli.dll (支持MYSQL数据库)

    四、启动

    1. 在进行里删除 Nginx 然后 重新启动

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

    phpinfo() 测试一下:

    五、将Nginx 和 PHP 设置为服务启动

    发现没有,如果每次都要这样启动 Nginx 和 PHP 是相当麻烦的,接下来我们将其设置为服务启动

    1. 下载 RunHiddenConsole 下载地址:http://www.inbeijing.org/wp-content/uploads/2015/06/RunHiddenConsole.zip

    2. star.bat 启动


    复制代码

    @echo off
    REM Windows 下无效
    REM set PHP_FCGI_CHILDREN=5REM 每个进程处理的最大请求数,或设置为 Windows 环境变量
    set PHP_FCGI_MAX_REQUESTS=1000
     echo Starting PHP FastCGI...
    RunHiddenConsole E:/development/php/php-7.1.1-nts-Win32-VC14-x64/php-cgi.exe -b 127.0.0.1:9000 -c E:/development/php/php-7.1.1-nts-Win32-VC14-x64/php.ini
     
    echo Starting nginx...
    RunHiddenConsole E:/development/nginx/nginx-1.10.3/nginx.exe -p E:/development/nginx/nginx-1.10.3

    复制代码

    3. stop.bat 停止

    @echo off
    echo Stopping nginx...  
    taskkill /F /IM nginx.exe > nul
    echo Stopping PHP FastCGI...
    taskkill /F /IM php-cgi.exe > nulexit

    五、结语

    到此Nginx 和 PHP 已经安装完毕了, 如果要链接Mysql 需要检查一下进程的 mysqld 启动了吗? 如果没有 进入到mysql/bin 目录 执行 mysqld 启动mysql服务

    也可以执行 mysqld --install 将其设置为启动服务。

    以上就是WNMP(Windows + Nginx + PHP + MySQL) 安装的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:Windows MySQL Nginx
    上一篇:php array_filter 过滤数组中的空值 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • 一文详解PHP实现职责链设计模式(附代码示例)• php实现通过JSON RPC与go通讯(附代码)• 浅析怎么使用PHP做异步爬取数据• PHP8.3要有新函数了!(json_validate函数说明)• 设计API接口时,要注意这些地方!
    1/1

    PHP中文网