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 off
rem the use of bat

echo ==================begin========================

cls 
SET NGINX_PATH=C:
SET NGINX_DIR=C:\wnmp\nginx\
SET PHP_DIR=C:\wnmp\php\
color 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" 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 /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()代碼部分需要 做相應更改。
&lt;html&gt;<br/>&lt;head&gt;<br/>&lt;title&gt;test mysql+php+nginx&lt;/title&gt;<br/>&lt;/head&gt;<br/>&lt;body&gt;<br/>&lt;?php<br/>$link = mysqli_connect("localhost","root","root");<br/>if($link){<br/>echo "db connect success!";<br/>}else{<br/>echo "db connect failed!";<br/>}<br/>?&gt;<br/>&lt;br&gt;<br/>&lt;?php phpinfo();?&gt;<br/>&lt;/body&gt;<br/>&lt;/html&gt;
  雙擊上述 start.bat腳本文件,鍵盤輸入 1後按下回車鍵

        如下圖所示,則表示nginx-php啓動成功

      

      打開瀏覽器,在瀏覽器地址欄內鍵入:http://127.0.0.1,如看到如下圖所示界面,說明wnmp配置成功

      

  至此,WNMP配置成功!

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

  這是小弟首次發帖,如果有不足之處還請指正,歡迎評論交流。

  參考鏈接:http://jingyan.baidu.com/article/636f38bb408ee4d6b84610b9.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章