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 相关文章推荐
简单的php 验证图片生成函数
May 21 PHP
php将时间差转换为字符串提示
Sep 07 PHP
phpadmin如何导入导出大数据文件及php.ini参数修改
Feb 18 PHP
生成随机字符串和验证码的类的PHP实例
Dec 24 PHP
php 字符串中的\n换行符无效、不能换行的解决方法
Apr 02 PHP
PHP使用DirectoryIterator显示下拉文件列表的方法
Mar 13 PHP
php实现网站文件批量压缩下载功能
Oct 28 PHP
PHP中file_exists使用中遇到的问题小结
Apr 05 PHP
yii2实现根据时间搜索的方法
May 25 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
Aug 30 PHP
PHP实现按之字形顺序打印二叉树的方法
Jan 16 PHP
PHP控制循环操作的时间
Apr 01 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
索尼SONY ICF-7600A(W)电路分析
2021/03/01 无线电
php采集时被封ip的解决方法
2010/08/29 PHP
PHP图片处理之图片背景、画布操作
2014/11/19 PHP
php格式化金额函数分享
2015/02/02 PHP
[原创]php获取数组中键值最大数组项的索引值
2015/03/17 PHP
php_pdo 预处理语句详解
2016/11/21 PHP
laravel 自定义常量的两种方案
2019/10/14 PHP
基于Jquery的动态创建DOM元素的代码
2010/12/28 Javascript
js history对象简单实现返回和前进
2013/10/30 Javascript
input:checkbox多选框实现单选效果跟radio一样
2014/06/16 Javascript
Nodejs中读取中文文件编码问题、发送邮件和定时任务实例
2015/01/01 NodeJs
javacript获取当前屏幕大小
2016/06/04 Javascript
使用JS读取XML文件的方法
2016/11/25 Javascript
js仿京东轮播效果 选项卡套选项卡使用
2017/01/12 Javascript
create-react-app 修改为多入口编译的方法
2018/08/01 Javascript
Vue+tracking.js 实现前端人脸检测功能
2020/04/16 Javascript
Python常用列表数据结构小结
2014/08/06 Python
使用C语言扩展Python程序的简单入门指引
2015/04/14 Python
Python使用指定字符长度切分数据示例
2019/12/05 Python
python多进程重复加载的解决方式
2019/12/13 Python
python django中8000端口被占用的解决
2019/12/17 Python
django model的update时auto_now不被更新的原因及解决方式
2020/04/01 Python
python中加背景音乐如何操作
2020/07/19 Python
使用gunicorn部署django项目的问题
2020/12/30 Python
英国领先品牌手动工具和电动工具供应商:Tooled Up
2018/11/24 全球购物
MONNIER Frères英国官网:源自巴黎女士奢侈品配饰电商平台
2018/12/06 全球购物
LN-CC英国:伦敦时尚生活的缩影
2019/09/01 全球购物
Linux如何修改文件和文件夹的权限
2012/06/27 面试题
暑假实习求职信范文
2013/09/22 职场文书
统计学专业毕业生的自我评价分享
2013/11/28 职场文书
客服文员岗位职责
2013/11/29 职场文书
教师求职自荐信
2014/03/09 职场文书
个人委托书范本
2014/04/02 职场文书
安全责任书怎么写
2014/07/28 职场文书
2015年度电厂个人工作总结
2015/05/13 职场文书
hive数据仓库新增字段方法
2022/06/25 数据库