win平台安装配置Nginx+php+mysql 环境


Posted in PHP onJanuary 12, 2016

 1.准备工作

(1)PHP 版本5.6.17 下载地址  PHP官网  三水点靠木 下载地址

(2)Nginx 版本1.8.0 下载地址  Nginx官网  三水点靠木 下载地址

(3)MySQL 版本5.7.10 MySQL官网  三水点靠木 下载地址

2.php的安装与配置

直接解压下载好的php包,到D盘wnmp目录(D:\wnmp),这里把解压出来的文件夹重命名成php5。进入文件夹修改php.ini-delelopment文件为php.ini,并用Editplus或者Notepad++打开来。找到

extension_dir = "ext" 更改为 extension_dir = "D:/wnmp/php5/ext"

常用扩展,去掉最前面的";"

extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mcrypt.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo.dll
extension=php_pdo_mysql.dll
extension=php_xmlrpc.dll

nginx支持配置,去掉前面";"

;cgi.fix_pathinfo=1

;cgi.force_redirect = 1

;cgi.rfc2616_headers = 0 先去前面的分号再改为 cgi.rfc2616_headers = 1

3.Nginx的安装配置

将下载的包解压到D:\wnmp,直接运行目录下nginx.exe启动。

1.启动方式有3种

(1)双击nginx.exe图标,可见黑窗口一闪而过,启动完毕。

(2)命令行到nginx目录,输入nginx启动。(注,此方式命令行窗口无任何提示,且被锁定)

(3)命令行到nginx目录,输入start nginx启动,此方式不锁定

2.修改配置支持PHP

进入nginx的conf目录,打开nginx的配置文件nginx.conf,找到

location / {
   root  html;#这里是站点的根目录
   index index.html index.htm index.php;
}

 将root  html;改为root  D:/wnmp/www;

再往下,找到

# pass the PHP scripts to FastCGI serverlistening on 127.0.0.1:9000
#
#location ~ \.php$ {
#  root      html;
#  fastcgi_pass  127.0.0.1:9000;
#  fastcgi_index index.php;
#  fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
#  include    fastcgi_params;
#}

  先将前面的“#”去掉,同样将root  html;改为root   D:/wnmp/www;。再把标记为红色的/scripts改为“$document_root”,这里的

“$document_root”就是指前面“root”所指的站点路径,这是改完后的:

# pass the PHP scripts to FastCGI serverlistening on 127.0.0.1:9000
#
location ~ \.php$ {
    root      D:/wnmp/www;
   fastcgi_pass  127.0.0.1:9000;
   fastcgi_index index.php;
   fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
   include    fastcgi_params;
}

保存配置文件,就可以了。

nginx+php的环境就初步配置好了,来跑跑看。我们可以输入命令

来启动php,并手动启动nginx,当然也可以利用脚本来实现。

首先把下载好的RunHiddenConsole.zip包解压到nginx目录内,RunHiddenConsole.exe的作用是在执行完命令行脚 本后可以自动关闭脚本,而从脚本中开启的进程不被关闭。然后来创建脚本,命名为“start_nginx.bat”。

@echooff
REMWindows 下无效
REM set PHP_FCGI_CHILDREN=5

REM 每个进程处理的最大请求数,或设置为 Windows 环境变量
setPHP_FCGI_MAX_REQUESTS=1000
 
echo Starting PHPFastCGI...
RunHiddenConsole D:/wnmp/php5/php-cgi.exe -b 127.0.0.1:9000 -cD:/wnmp/php5/php.ini

echo Starting nginx...
RunHiddenConsole D:/wnmp/nginx/nginx.exe -p D:/wnmp/nginx

再另外创建一个名为stop_nginx.bat的脚本用来关闭nginx

@echooff
echo Stoppingnginx... 
taskkill /F /IM nginx.exe > nul
echo Stopping PHPFastCGI...
taskkill /F /IM php-cgi.exe > nul
exit

这样,我们的服务脚本也都创建完毕了。双击start_nginx.bat看看进程管理器是不是有两个nginx.exe的进程和一个php-cgi.exe的进程呢?

这样nginx服务就启动了,而且php也以fastCGI的方式运行了。

到站点目录下,新建一个phpinfo.php的文件,在里面编辑

<?php echo phpinfo();?>

保存后,打开浏览器输入“http://localhost/phpinfo.php”,如果看到

就说明,nginx+php的环境已经配置好了,呵呵~

4.MySQL安装和配置

 

(简略)MySQL安装下载后,一路next安装。

PHP 相关文章推荐
《PHP边学边教》(04.编写简易的通讯录――视频教程1)
Dec 13 PHP
基于PHP中的常用函数回顾
Jul 11 PHP
ASP和PHP实现生成网站快捷方式并下载到桌面的方法
May 08 PHP
php写入、删除与复制文件的方法
Jun 20 PHP
php判断对象是派生自哪个类的方法
Jun 20 PHP
实现PHP搜索加分页
Oct 12 PHP
php微信高级接口调用方法(自定义菜单接口、客服接口、二维码)
Nov 28 PHP
php格式化时间戳
Dec 17 PHP
Thinkphp框架 表单自动验证登录注册 ajax自动验证登录注册
Dec 27 PHP
使用PHPMailer发送邮件实例
Feb 15 PHP
laravel 操作数据库常用函数的返回值方法
Oct 11 PHP
Laravel框架实现定时Task Scheduling例子
Oct 22 PHP
WordPress中重置文章循环的rewind_posts()函数讲解
Jan 11 #PHP
深入解析WordPress中加载模板的get_template_part函数
Jan 11 #PHP
PHP实现基于文本的摩斯电码生成器
Jan 11 #PHP
简单了解WordPress开发中update_option()函数的用法
Jan 11 #PHP
WordPress后台中实现图片上传功能的实例讲解
Jan 11 #PHP
在WordPress的后台中添加顶级菜单和子菜单的函数详解
Jan 11 #PHP
在WordPress中获取数据库字段内容和添加主题设置菜单
Jan 11 #PHP
You might like
yii实现创建验证码实例解析
2014/07/31 PHP
Yii框架中 find findAll 查找出制定的字段的方法对比
2014/09/10 PHP
php使用glob函数快速查询指定目录文件的方法
2014/11/15 PHP
prototype 的说明 js类
2006/09/07 Javascript
javascript两种function的定义介绍及区别说明
2013/05/02 Javascript
js 控制图片大小核心讲解
2013/10/09 Javascript
javascript常见数字进制转换实例分析
2016/04/21 Javascript
jQuery增加、删除及修改select option的方法
2016/08/19 Javascript
BootStrap中按钮点击后被禁用按钮的最佳实现方法
2016/09/23 Javascript
利用JavaScript实现拖拽改变元素大小
2016/12/14 Javascript
javascript实现日期三级联动下拉框选择菜单
2020/12/03 Javascript
基于JavaScript实现百度搜索框效果
2020/06/28 Javascript
移动端网页开发调试神器Eruda的介绍与使用技巧
2017/10/30 Javascript
js点击时关闭该范围下拉菜单之外的菜单方法
2018/01/11 Javascript
基于react后端渲染模板引擎noox发布使用
2018/01/11 Javascript
vue判断input输入内容全是空格的方法
2018/03/02 Javascript
如何让Nodejs支持H5 History模式(connect-history-api-fallback源码分析)
2019/05/30 NodeJs
微信小程序单选框自定义赋值
2020/05/26 Javascript
[00:32]2018DOTA2亚洲邀请赛Mineski出场
2018/04/04 DOTA
[01:13:46]iG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python实现监控程序执行时间并将其写入日志的方法
2015/06/30 Python
python二分查找算法的递归实现方法
2016/05/12 Python
pip安装Python库时遇到的问题及解决方法
2017/11/23 Python
Flask web开发处理POST请求实现(登录案例)
2018/07/26 Python
Python图像处理实现两幅图像合成一幅图像的方法【测试可用】
2019/01/04 Python
Python 合并多个TXT文件并统计词频的实现
2019/08/23 Python
Python如何基于rsa模块实现非对称加密与解密
2020/01/03 Python
Python3标准库之functools管理函数的工具详解
2020/02/27 Python
django 实现后台从富文本提取纯文本
2020/07/02 Python
意大利香水和彩妆护肤品购物网站:Ditano
2017/08/13 全球购物
馥蕾诗美国官网:Fresh美国
2019/10/09 全球购物
车间副主任岗位职责
2013/12/24 职场文书
孝老爱亲模范事迹
2014/01/24 职场文书
优秀少先队员事迹材料
2014/12/24 职场文书
生产现场禁烟通知
2015/04/23 职场文书
pycharm代码删除恢复的方法
2021/06/26 Python