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


Posted in PHP onSeptember 04, 2016

最近在学习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的详细教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
解决phpmyadmin中文乱码问题。。。
Jan 18 PHP
首页四格,首页五格For6.0(GBK)(UTF-8)[12种组合][9-18][版主安装测试通过]
Sep 24 PHP
php mysql Errcode: 28 终极解决方法
Jul 01 PHP
一些 PHP 管理系统程序中的后门
Aug 05 PHP
php设计模式 Decorator(装饰模式)
Jun 26 PHP
php判断上传的Excel文件中是否有图片及PHPExcel库认识
Jan 11 PHP
PHP时间戳与日期之间转换的实例介绍
Apr 19 PHP
php判断数组元素中是否存在某个字符串的方法
Jun 14 PHP
PHP多线程编程之管道通信实例分析
Mar 07 PHP
PHP类的特性实例分析
Sep 28 PHP
基于php实现的php代码加密解密类完整实例
Oct 12 PHP
laravel框架分组控制器和分组路由实现方法示例
Jan 25 PHP
使用ThinkPHP的自动完成实现无限级分类实例详解
Sep 02 #PHP
CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法详解(mini版本)
Sep 01 #PHP
PHP数组编码gbk与utf8互相转换的两种方法
Sep 01 #PHP
Yii2框架数据库简单的增删改查语法小结
Aug 31 #PHP
深入浅析Yii admin的权限控制
Aug 31 #PHP
php解决和避免form表单重复提交的几种方法
Aug 31 #PHP
PHP Callable强制指定回调类型的方法
Aug 30 #PHP
You might like
如何开始收听短波广播
2021/03/01 无线电
提高网站信任度的技巧
2008/10/17 Javascript
JavaScript高级程序设计阅读笔记(六) ECMAScript中的运算符(二)
2012/02/27 Javascript
页面加载完后自动执行一个方法的js代码
2014/09/06 Javascript
nodejs教程之入门
2014/11/21 NodeJs
jquery搜索框效果实现方法
2015/01/16 Javascript
JS中prototype的用法实例分析
2015/03/19 Javascript
JavaSciprt中处理字符串之sup()方法的使用教程
2015/06/08 Javascript
jquery实现删除一个元素后面的所有元素功能
2015/12/21 Javascript
JS拖拽组件学习使用
2016/01/19 Javascript
jquery 动态增加删除行的简单实例(推荐)
2016/10/12 Javascript
JS写XSS cookie stealer来窃取密码的步骤详解
2017/11/20 Javascript
微信小程序使用二次贝塞尔曲线画波浪
2018/12/25 Javascript
详解关于webpack多入口热加载很慢的原因
2019/04/24 Javascript
jQuery事件委托代码实践详解
2019/06/21 jQuery
vue获取验证码倒计时组件
2019/08/26 Javascript
vue-cli点击实现全屏功能
2020/03/07 Javascript
vue+ElementUI 关闭对话框清空验证,清除form表单的操作
2020/08/06 Javascript
JavaScript实现简易计算器小功能
2020/10/22 Javascript
vue 导航守卫和axios拦截器有哪些区别
2020/12/19 Vue.js
[40:13]Ti4 冒泡赛第二天 iG vs NEWBEE 2
2014/07/15 DOTA
python友情链接检查方法
2015/07/08 Python
Python 中的with关键字使用详解
2016/09/11 Python
Python使用pip安装报错:is not a supported wheel on this platform的解决方法
2018/01/23 Python
Python for循环生成列表的实例
2018/06/15 Python
对python opencv 添加文字 cv2.putText 的各参数介绍
2018/12/05 Python
Python操作redis实例小结【String、Hash、List、Set等】
2019/05/16 Python
python命令行工具Click快速掌握
2019/07/04 Python
PyTorch 普通卷积和空洞卷积实例
2020/01/07 Python
浅析matlab中imadjust函数
2020/02/27 Python
Python中的xlrd模块使用原理解析
2020/05/21 Python
详解matplotlib绘图样式(style)初探
2021/02/03 Python
医科大学生的自我评价
2013/12/04 职场文书
优秀员工自荐书
2013/12/19 职场文书
法律专业应届生自荐信范文
2014/01/06 职场文书
访谈节目策划方案
2014/05/15 职场文书