欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

windows7配置Nginx+php+mysql的详细教程

程序员文章站 2024-02-28 12:54:52
最近在学习php,想把自己的学习经历记录下来,并写一些经验,仅供参考交流。此文适合那些刚刚接触php,想要学习并想要自己搭建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服务并为开始状态。

windows7配置Nginx+php+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正常工作。

windows7配置Nginx+php+mysql的详细教程

(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服务启动成功

windows7配置Nginx+php+mysql的详细教程

  (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()代码部分需要 做相应更改。

<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启动成功

windows7配置Nginx+php+mysql的详细教程

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

windows7配置Nginx+php+mysql的详细教程

  至此,wnmp配置成功!

以上所述是小编给大家介绍的windows7配置nginx+php+mysql的详细教程,希望对大家有所帮助