首页 > 代码库 > windows7配置Nginx+php+mysql教程

windows7配置Nginx+php+mysql教程

windows7配置Nginx+php+mysql教程   

  最近在学习php,想把自己的学习经历记录下来,并写一些经验,仅供参考交流。此文适合那些刚刚接触php,想要学习并想要自己搭建Nginx+php+mysql环境的同学。

  当然,你也可以选择集成好的安装包,比如 wamp等,不过我推荐大家还是自己手动搭建一下环境比较好,这样能够更好的了解php及其运行流程。下面直接进入正题。

步骤:

1.准备安装包等

  (1)nginx-1.10.1.zip,下载链接为http://nginx.org/en/download.html 。我个人选择了稳定版。

    (2)php-5.6.25-nts-Win32-VC11-x86.zip或x64.zip 下载链接为http://windows.php.net/download#php-5.6,根据系统类型选择相应版本。

  (3)mysql-installer--------.msi  下载链接为http://dlsw.baidu.com/sw-search-sp/soft/ea/12585/mysql-5.6.24-win32.1432006610.zip,由于mysql官网需要注册,所以我直接贴了百度的地址。

2.安装mysql服务  (如果以前安装过mysql则可以不必下载安装,在操作的时候启动mysql服务即可。)

  双击mysql-install-------.msi安装包进入安装环境界面,选择默认选项进行安装,采用Typical(典型安装),并启动MySQL配置向导,选择默认选项配置,此处编码选择UTF-8,设置数据库密码后(一般为root),“Execute ”执行,点击“Finish”完成安装。要确保打开mysql服务,检查是否打开服务的方法为: win+R 输入services.msc 回车,查看是否如下图所示有mysql服务并为开始状态。

      技术分享

3.安装nginx-1.10.1

  (1)解压nginx-1.10.1.zip文件至C:\wnmp\nginx,并进入该文件夹内,找到nginx.exe,鼠标双击nginx.exe,启动nginx。 

    进入任务管理器进程选项卡,如找到nginx.exe进程,即确认nginx已启动。

    打开浏览器,在浏览器地址栏内键入:http://127.0.0.1,如看到如下图所示界面,说明nginx正常工作。

      技术分享

      (2)进入C:\wnmp\nginx\conf文件夹内,记事本或写字板打开nginx的配置文件nginx.conf

        找到如下两处进行修改,修改内容如下  

server {    listen       80;    server_name  localhost;    #modify by lee 20160902 for php -s    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:9001;         fastcgi_index  index.php;         fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;         include        fastcgi_params;    }    #modify by lee 20160902 for php -e}

 4.安装php-5.6.25-nts-Win32-VC11-x64/x86

  (1)解压php-5.6.25-nts-Win32-VC11-x64/x86.zip文件到C:\wnmp\php。

  (2)进入C:\wnmp\php目录内,备份php.ini-development一份,将php.ini-development重命名为php.ini

     查找定位并修改:

      ; extension_dir = "ext" ,删除前面的分号并修改为:extension_dir = "C:/wnmp/php/ext"

      ;extension=php_gd2.dll,删除前面的分号:extension=php_gd2.dll

      ;extension=php_mbstring.dll,删除前面的分号:extension=php_mbstring.dll

      ;extension=php_mysql.dll,删除前面的分号:extension=php_mysql.dll

      ;extension=php_mysqli.dll,删除前面的分号:extension=php_mysqli.dll

      ;extension=php_pdo_mysql.dll,删除前面的分号:extension=php_pdo_mysql.dll

      ;cgi.force_redirect = 1,删除前面的分号:cgi.force_redirect = 1

      ;cgi.fix_pathinfo=1,删除前面的分号:cgi.fix_pathinfo=1

      ;cgi.rfc2616_headers = 0,删除前面的分号:cgi.rfc2616_headers = 1

  (3)配置环境变量:

      打开环境变量配置窗口,

      在系统环境变量中添加 变量  变量名:PHP_HOME    变量值:C:\wnmp\php

      在系统环境变量中添加 变量  变量名:NGINX_HOME  变量值:C:\wamp\nginx

      在path变量最后添加:%PHP_HOME%;%NGINX_HOME%;  (注意添加分号)

  (4)启动php-cgi 服务:

      win+R 输入cmd回车,进入命令提示符界面,进入C:\wnmp\php>,

      使用命令   php-cgi.exe -b 127.0.0.1:9001 -c php.ini 

      重新打开一个新的命令提示符界面,

        输入命令: netstat -ano|findstr "9001"会出现 9001端口号占用情况

        再次输入命令: tasklist|findstr "2892"  (注:2892为上一个命令执行完毕后,最后一列显示的进程号)

        如下图所示:表示 php-cgi服务启动成功

      技术分享

  (5)编写启动脚本 start.bat (其实到上步为止,已经配置完成,但是为了以后便于启动各种服务,特此编写一个启动脚本。)

      新建文本文档,重命名为start.bat

      用记事本打开后,做如下编辑:

(如果所以文件目录与本教程所述完全一致,则此脚本可以直接使用,如果有区别,则需要对NGINX_DIR和PHP_DIR做相应修改后使用)

@echo offrem the use of bat echo ==================begin======================== cls SET NGINX_PATH=C:SET NGINX_DIR=C:\wnmp\nginxSET PHP_DIR=C:\wnmp\phpcolor 0a TITLE Nginx Manager CLS  ECHO. ECHO. * * Nginx Manage App   *  ECHO.  :MENU  ECHO. * nginx process list *  tasklist|findstr /i "nginx.exe" ECHO.     ECHO.  [1] start Nginx      ECHO.  [2] stop Nginx      ECHO.  [3] restart Nginx      ECHO.  [4] exit ECHO.  ECHO.Please input the number:set /p ID=    IF "%id%"=="1" GOTO start     IF "%id%"=="2" GOTO stop     IF "%id%"=="3" GOTO restart     IF "%id%"=="4" EXITPAUSE  :start     call :startNginx    call :startPhpFastCGI    GOTO MENU :stop     call :shutdownNginx    GOTO MENU :restart     call :shutdownNginx    call :startNginx    GOTO MENU :shutdownNginx    ECHO.     ECHO.Stop Nginx......     taskkill /F /IM nginx.exe > nul    ECHO.Stopping PHP FastCGI......    ECHO.OK,Stop all nginx process and php fastcgi    goto :eof :startNginx    ECHO.     ECHO.Start Nginx......     IF NOT EXIST "%NGINX_DIR%nginx.exe" ECHO "%NGINX_DIR%nginx.exe" is not exists      %NGINX_PATH%      cd "%NGINX_DIR%"      IF EXIST "%NGINX_DIR%nginx.exe" (        echo "start ‘‘ nginx.exe"        start "" nginx.exe    )    ECHO.OK    goto :eof    :startPhpFastCGI    ECHO.     ECHO.Start PHP FastCGI......    IF NOT EXIST "%PHP_DIR%php-cgi.exe" ECHO "%PHP_DIR%php-cgi.exe" is not exists      %NGINX_PATH%      cd "%PHP_DIR%"      IF EXIST "%PHP_DIR%php-cgi.exe" (        echo "start ‘‘ php-cgi.exe"        start /b  php-cgi.exe -b 127.0.0.1:9001 -c php.ini    )    ECHO.OK    goto :eof

   (6)测试成功

      在C:\wnmp下新建www文件夹,在www文件夹下新建php文件 index.php,并做如下编辑

      如下mysqli_connect()代码部分需要 做相应更改。

    

<html> <head>  <title>test mysql+php+nginx</title> </head> <body>  <?php   $link = mysqli_connect("localhost","root","root");   if($link){    echo "db connect success!";   }else{    echo "db connect failed!";   }  ?>  <br>  <?php phpinfo();?> </body></html> 

      双击上述 start.bat脚本文件,键盘输入 1后按下回车键

        如下图所示,则表示nginx-php启动成功

      技术分享

      打开浏览器,在浏览器地址栏内键入:http://127.0.0.1,如看到如下图所示界面,说明wnmp配置成功。

      技术分享

  至此,WNMP配置成功!

  下一篇文章会是 如何在nginx上配置Virtual Hosts 和Openssl的设定。

  这是小弟首次发帖,如果有不足之处还请指正,欢迎评论交流。

 

  参考链接:http://jingyan.baidu.com/article/636f38bb408ee4d6b84610b9.html

windows7配置Nginx+php+mysql教程