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 相关文章推荐
输入值/表单提交参数过滤有效防止sql注入的方法
Dec 25 PHP
利用中国天气预报接口实现简单天气预报
Jan 20 PHP
PHP+jquery实时显示网站在线人数的方法
Jan 04 PHP
ThinkPHP 404页面的设置方法
Jan 14 PHP
php实现多维数组中每个单元值(数字)翻倍的方法
Feb 16 PHP
PHP中文乱码解决方案
Mar 05 PHP
替换php字符串中的单引号为双引号的方法
Feb 16 PHP
PHP基于新浪IP库获取IP详细地址的方法
May 04 PHP
PHP实现图的邻接矩阵表示及几种简单遍历算法分析
Nov 24 PHP
PHP实现负载均衡下的session共用功能
Apr 17 PHP
php框架CodeIgniter主从数据库配置方法分析
May 25 PHP
PHP中Static(静态)关键字功能与用法实例分析
Apr 05 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
phpfans留言版用到的install.php
2007/01/04 PHP
解析php通过cookies获取远程网页的指定代码
2013/06/25 PHP
yii2.0整合阿里云oss删除单个文件的方法
2017/09/19 PHP
javascript firefox不显示本地预览图片问题的解决方法
2008/11/12 Javascript
Kibo 用于处理键盘事件的Javascript工具库
2011/10/28 Javascript
node.js中的fs.realpathSync方法使用说明
2014/12/16 Javascript
js流动式效果显示当前系统时间
2016/05/16 Javascript
AngularJs Forms详解及简单示例
2016/09/01 Javascript
利用Vue.js指令实现全选功能
2016/09/08 Javascript
javascript 中的事件委托详解
2016/10/25 Javascript
vue.js绑定class和style样式(6)
2016/12/09 Javascript
nodejs使用express创建一个简单web应用
2017/03/31 NodeJs
使用JavaScript根据图片获取条形码的方法
2017/07/04 Javascript
vue router下的html5 history在iis服务器上的设置方法
2017/10/18 Javascript
详解vue2.0+vue-video-player实现hls播放全过程
2018/03/02 Javascript
angular2路由之routerLinkActive指令【推荐】
2018/05/30 Javascript
vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用)
2018/11/05 Javascript
vue 动态生成拓扑图的示例
2021/01/03 Vue.js
[57:37]EG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python连接MySQL、MongoDB、Redis、memcache等数据库的方法
2013/11/15 Python
Django基础知识 web框架的本质详解
2019/07/18 Python
关于keras.layers.Conv1D的kernel_size参数使用介绍
2020/05/22 Python
纯css3实现鼠标经过图片显示描述的动画效果
2014/09/01 HTML / CSS
利用css3径向渐变做一张优惠券的示例
2018/03/22 HTML / CSS
HTML5 在canvas中绘制文本附效果图
2014/06/23 HTML / CSS
详解移动端Html5页面中1px边框的几种解决方法
2018/07/24 HTML / CSS
JAVA招聘远程笔试题
2015/07/23 面试题
中学门卫岗位职责
2013/12/26 职场文书
解除劳动合同通知书范本
2015/04/16 职场文书
亮剑观后感600字
2015/06/05 职场文书
2019年员工晋升管理制度范本!
2019/07/08 职场文书
Python3接口性能测试实例代码
2021/06/20 Python
Java Kafka 消费积压监控的示例代码
2021/07/01 Java/Android
Windows 11上手初体验:任务栏和开始菜单等迎来大改
2021/11/21 数码科技
深入讲解Vue中父子组件通信与事件触发
2022/03/22 Vue.js
Tomcat用户管理的优化配置详解
2022/03/31 Servers