>  기사  >  php教程  >  Windows7 구성 Nginx+php+mysql 튜토리얼

Windows7 구성 Nginx+php+mysql 튜토리얼

WBOY
WBOY원래의
2016-09-05 08:45:41981검색

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 설치 패키지를 두 번 클릭하여 설치 환경 인터페이스로 들어가서 기본 설치 옵션을 선택하고 일반(일반 설치)을 사용한 다음 MySQL 구성 마법사를 시작하고 기본 옵션 구성, 여기에 코드 UTF-8을 선택하고 데이터베이스 비밀번호(보통 루트)를 설정한 후 "실행"을 클릭하고 "마침"을 클릭하여 설치를 완료합니다. mysql 서비스가 켜져 있는지 확인하려면 서비스가 켜져 있는지 확인하는 방법은 win+R, services.msc를 입력하고 Enter 키를 눌러 mysql 서비스가 있고 있는지 확인하는 것입니다. 아래와 같이 시작 상태가 됩니다.

  

3. nginx-1.10.1

을 설치합니다.

(1) nginx-1.10.1.zip 파일을 C:wnmpnginx에 압축을 풀고 폴더에 들어가서 다음을 찾습니다. nginx.exe, nginx.exe를 두 번 클릭하여 nginx를 시작합니다.

 작업 관리자의 프로세스 탭에 들어가면 nginx.exe 프로세스가 발견되면 nginx가 시작된 것입니다.

브라우저를 열고 브라우저 주소 표시줄에 http://127.0.0.1을 입력하면 아래와 같은 인터페이스가 표시되면 nginx가 정상적으로 작동하는 것입니다.

  .

(2) C:wnmpnginxconf 폴더에 들어가서 nginx 구성 파일 nginx.conf

를 메모장이나 워드패드에서 엽니다.

수정할 부분은 다음 두 곳을 찾아 수정하면 됩니다

<span style="color: #000000;">server {
    listen       </span>80<span style="color: #008000;">;
</span>    server_name  localhost<span style="color: #008000;">;
</span>    #modify by lee 20160902<span style="color: #000000;"> for php -s
    location / {
        root   C:/wnmp/www</span><span style="color: #008000;">;
</span>        index  index.html index.htm index.php<span style="color: #008000;">;
</span><span style="color: #000000;">    }
    # pass the PHP scripts to FastCGI server listening on </span>127.0.0.1:9000<span style="color: #000000;"> 
    location ~ \.php$ {
         root           C:/wnmp/www</span><span style="color: #008000;">;
</span>         fastcgi_pass   127.0.0.1:9001<span style="color: #008000;">;
</span>         fastcgi_index  index.php<span style="color: #008000;">;
</span>         fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name<span style="color: #008000;">;
</span>         include        fastcgi_params<span style="color: #008000;">;
</span><span style="color: #000000;">    }

    #modify by lee </span>20160902<span style="color: #000000;"> for php -e
}</span>

 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做相应修改后使用)

<span style="color: #000000;">@echo off
rem the use of bat
 
</span><span style="color: #0000ff;">echo</span> ==================begin========================<span style="color: #000000;">
 
cls 
SET NGINX_PATH</span>=<span style="color: #000000;">C:
SET NGINX_DIR</span>=<span style="color: #000000;">C:\wnmp\nginx\
SET PHP_DIR</span>=<span style="color: #000000;">C:\wnmp\php\
color 0a 
TITLE Nginx Manager
 
CLS 
 
ECHO. 
ECHO. </span>* * Nginx Manage App   *<span style="color: #000000;">  
ECHO. 
 
:MENU 
 
ECHO. </span>* nginx process list *<span style="color: #000000;">  
tasklist</span>|findstr /i <span style="color: #800000;">"</span><span style="color: #800000;">nginx.exe</span><span style="color: #800000;">"</span><span style="color: #000000;">
 
ECHO. 
    ECHO.  [</span><span style="color: #800080;">1</span><span style="color: #000000;">] start Nginx  
    ECHO.  [</span><span style="color: #800080;">2</span><span style="color: #000000;">] stop Nginx  
    ECHO.  [</span><span style="color: #800080;">3</span><span style="color: #000000;">] restart Nginx  
    ECHO.  [</span><span style="color: #800080;">4</span><span style="color: #000000;">] exit 
ECHO. 
 
ECHO.Please input the number:
set </span>/p ID=<span style="color: #000000;">
    IF </span><span style="color: #800000;">"</span><span style="color: #800000;">%id%</span><span style="color: #800000;">"</span>==<span style="color: #800000;">"</span><span style="color: #800000;">1</span><span style="color: #800000;">"</span><span style="color: #000000;"> GOTO start 
    IF </span><span style="color: #800000;">"</span><span style="color: #800000;">%id%</span><span style="color: #800000;">"</span>==<span style="color: #800000;">"</span><span style="color: #800000;">2</span><span style="color: #800000;">"</span><span style="color: #000000;"> GOTO stop 
    IF </span><span style="color: #800000;">"</span><span style="color: #800000;">%id%</span><span style="color: #800000;">"</span>==<span style="color: #800000;">"</span><span style="color: #800000;">3</span><span style="color: #800000;">"</span><span style="color: #000000;"> GOTO restart 
    IF </span><span style="color: #800000;">"</span><span style="color: #800000;">%id%</span><span style="color: #800000;">"</span>==<span style="color: #800000;">"</span><span style="color: #800000;">4</span><span style="color: #800000;">"</span><span style="color: #000000;"> EXIT
PAUSE 
 
: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 </span>/F /IM nginx.exe ><span style="color: #000000;"> nul
    ECHO.Stopping PHP FastCGI......

    ECHO.OK,Stop all nginx process and php fastcgi
    goto :eof
 
:startNginx
    ECHO. 
    ECHO.Start Nginx...... 
    IF NOT EXIST </span><span style="color: #800000;">"</span><span style="color: #800000;">%NGINX_DIR%nginx.exe</span><span style="color: #800000;">"</span> ECHO <span style="color: #800000;">"</span><span style="color: #800000;">%NGINX_DIR%nginx.exe</span><span style="color: #800000;">"</span><span style="color: #000000;"> is not exists 
 
    </span>%NGINX_PATH%<span style="color: #000000;"> 
 
    cd </span><span style="color: #800000;">"</span><span style="color: #800000;">%NGINX_DIR%</span><span style="color: #800000;">"</span><span style="color: #000000;"> 
 
    IF EXIST </span><span style="color: #800000;">"</span><span style="color: #800000;">%NGINX_DIR%nginx.exe</span><span style="color: #800000;">"</span><span style="color: #000000;"> (
        </span><span style="color: #0000ff;">echo</span> <span style="color: #800000;">"</span><span style="color: #800000;">start '' nginx.exe</span><span style="color: #800000;">"</span><span style="color: #000000;">
        start </span><span style="color: #800000;">""</span><span style="color: #000000;"> nginx.exe
    )
    ECHO.OK
    goto :eof
    
:startPhpFastCGI
    ECHO. 
    ECHO.Start PHP FastCGI......
    IF NOT EXIST </span><span style="color: #800000;">"</span><span style="color: #800000;">%PHP_DIR%php-cgi.exe</span><span style="color: #800000;">"</span> ECHO <span style="color: #800000;">"</span><span style="color: #800000;">%PHP_DIR%php-cgi.exe</span><span style="color: #800000;">"</span><span style="color: #000000;"> is not exists 
 
    </span>%NGINX_PATH%<span style="color: #000000;"> 
 
    cd </span><span style="color: #800000;">"</span><span style="color: #800000;">%PHP_DIR%</span><span style="color: #800000;">"</span><span style="color: #000000;"> 
 
    IF EXIST </span><span style="color: #800000;">"</span><span style="color: #800000;">%PHP_DIR%php-cgi.exe</span><span style="color: #800000;">"</span><span style="color: #000000;"> (
        </span><span style="color: #0000ff;">echo</span> <span style="color: #800000;">"</span><span style="color: #800000;">start '' php-cgi.exe</span><span style="color: #800000;">"</span><span style="color: #000000;">
        start </span>/b  php-cgi.exe -b <span style="color: #800080;">127.0</span>.<span style="color: #800080;">0.1</span>:<span style="color: #800080;">9001</span> -<span style="color: #000000;">c php.ini
    )
    ECHO.OK
    goto :eof</span>

   (6)测试成功

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

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

    

<html>
 <head>
  <title>test <span style="color: #008080;">mysql</span>+php+nginx</title>
 </head>
 <body>
  <?<span style="color: #000000;">php
   </span><span style="color: #800080;">$link</span> = <span style="color: #008080;">mysqli_connect</span>("localhost","root","root"<span style="color: #000000;">);
   </span><span style="color: #0000ff;">if</span>(<span style="color: #800080;">$link</span><span style="color: #000000;">){
    </span><span style="color: #0000ff;">echo</span> "db connect success!"<span style="color: #000000;">;
   }</span><span style="color: #0000ff;">else</span><span style="color: #000000;">{
    </span><span style="color: #0000ff;">echo</span> "db connect failed!"<span style="color: #000000;">;
   }
  </span>?>
  <br>
  <?php <span style="color: #008080;">phpinfo</span>();?>
 </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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.