对于在windows上的php+nginx的配置可能好多同学一次根本都配不正确,于我也是如此,为此我将我成功配置的过程细致的总结如下,希望能帮助搞PHP研究的同学

1、资源准备

MySQL:这个链接不提供了大家搞开发的电脑没个MySQL安装程序实在是太不像话了。

PHP:http://windows.php.net/download/

(我下载的是VC9 x86 Thread Safe (2012-May-08 18:26:37)这个版本的zip包)

Ngnix:http://kevinworthington.com/nginx-for-windows/

(我下载的是1.2.0(32-bit)的安装程序)

RunHiddenConsole:http://www.haoboweb.com/uploads/allimg/110613/RunHiddenConsole.zip

(这个程序非常有用,知道Linux环境的nohup用法不?对,就是干同样的功能,不懂的话百度去吧)

2、配置步骤(省略MySQL安装,不过有时候MySQL安装失败重装的话是有一定难度的,可以参考我的相关文章予以解决)

PHP配置

1)将下载的PHP包加压至F:\php

2)将F:\php\php.ini-development文件备份一份,然后将原文件改名为php.ini

3)修改php.ini

指定php存放目录:doc_root = "C:\nginx\html"

更改扩展存放目录为真是拓展存放目录:extension_dir = "ext"

更改时区:date.timezone = Asia/BeiJing

因为nginx需要的是cgi方式的php,所以如下几个地方是重点,否则nginx无法打开php文件:

enable_dl = On

cgi.force_redirect = 0

cgi.fix_pathinfo=1

fastcgi.impersonate = 1

cgi.rfc2616_headers = 1

为了支持MySQL,请进行下面这样的操作:

在F:\\F:\PHP\php.ini中进行下几步查找定位

查找定位至:;extension=php_gd2.dll,去掉前面分号

查找定位至:;extension=php_mbstring.dll,去掉前面分号

查找定位至:;extension=php_mysql.dll,去掉前面分号

查找定位至:;extension=php_mysqli.dll,去掉前面分号

查找定位至:;extension=php_pdo_mysql.dll,去掉前面分号

Nginx配置

1)将下载的Nginx进行安装默认安装到C:\nginx目录

2)将C:\nginx\nginx.conf文件打开,进行如下修改

查找定位worker_connections改为worker_connections 64;(因为是本地开发使用,所以线程不开太多)

查找定位charset改为charset gbk;

下面贴出比较重要的片段

location / {

root   html;

index  index.html index.htm index.php;

autoindex on;

}

这里主要添加了inde.php

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;

}

这里要注意fastcgi_pass   127.0.0.1:9000端口要符合php的fastcgi运行端口

3)编写启动php-cgi.exe和nginx.ex的批处理程序(这样做是简化总是输入命令执行的麻烦)

新建一个目录F:\php-nginx-manage-cmd,将下载好的RunHiddenConsole.exe拷贝到此目录

在此目录创建start-php-nginx.bat,内容如下

@echo off

echo Starting PHP FastCGI...

RunHiddenConsole F:/php/php-cgi.exe -b 127.0.0.1:9000 -c F:/php/php.ini

echo Starting nginx...

RunHiddenConsole c:/nginx/nginx.exe

Exit

对于上面的内容中的三个路径你可以指定成你自己的实际程序安装路径

在此目录创建stop-php-nginx.bat,内容如下

@echo off

echo Stopping nginx...

taskkill /F /IM nginx.exe > nul

echo Stopping PHP FastCGI...

taskkill /F /IM php-cgi.exe > nul

exit

对于上面的批处理希望你不要做修改

4)运行起来PHP的HelloWorld程序

前提:执行F:\php-nginx-manage-cmd\start-php-nginx.bat
  启动php-cgi和nginx后我们可以访问nginx的默认页面通过访问http://localhost/,如下图所示

C:\nginx\html\test1.php

<?php

echo "helloworld,";    //输出字符串helloworld

echo "this is my firstphp script.";          //同上

echo phpinfo();    //phpinfo()为系统函数  输出php环境信息

?>

访问http://localhost/test1.php,结果如下图所示


  C:\nginx\html\test2.php

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gbk" />

<title>Welcome to nginx!</title>

</head>

<body>

<?php header("Content-Type:text/html;   charset=gbk");

$link = mysql_connect("localhost","root","root");

if($link){

echo "数据库连接成功!";

}else{

echo "数据库连接失败!";

}

?>

</body>

</html>

访问http://localhost/test2.php,结果页面如下


 OK!大功告成!试试吧,你会很快的

windows下配置PHP+Nginx+MySQL完整流程(转)的更多相关文章

  1. windows 下配置 Nginx 常见问题(转)

    windows 下配置 Nginx 常见问题 因为最近的项目需要用到负载均衡,不用考虑,当然用大名鼎鼎的Nginx啦.至于Nginx的介绍,这里就不多说了,直接进入主题如何在Windows下配置. 我 ...

  2. Windows下配置Nginx

    一.今天是2017年1月18日.揣着一种也许叫做冲动的心情,决定以后每天都记录和回顾新涉及的技术,巩固已学到的知识,坚持. 二.回归到今天的技术主题,因为之前对于[反向代理]这种技术充满了好奇,借此机 ...

  3. windows 下配置 Nginx 常见问题

    因为最近的项目需要用到负载均衡,不用考虑,当然用大名鼎鼎的Nginx啦.至于Nginx的介绍,这里就不多说了,直接进入主题如何在Windows下配置. 我的系统是win7旗舰版的,到官网下载最新版本 ...

  4. CentOS和Windows下配置MySQL远程访问的教程

    CentOS和Windows下配置MySQL远程访问的教程   一.前言 由于实验在云服务器上跑的结果不是很理想.所以,现在切换到局域网服务器.因此,需要重新配置 Windows 服务器和 CentO ...

  5. 在CentOS/Windows下配置Nginx(以及踩坑)

    在CentOS/Windows下配置Nginx(以及踩坑) 1. 序言 因为这类文章网上比较多,实际操作起来也大同小异,所以我并不会着重于详细配置方面,而是将我配置时踩的坑写出来. 2. CentOS ...

  6. windows下配置wnmp

    最近尝试windows下配置nginx+php+mysql,在这里总结一下. 1.下载windows版本的nginx,官网​下载地址:http://nginx.org/en/download.htm, ...

  7. windows下配置lamp环境(5)---配置MySQL5.6

    开始配置mysql 1.创建配置文件my.ini   1.进入C:\wamp\MySQL   2.把my-default.ini 另存一份:my.ini   3.开始编辑mysql的配置文件,打开my ...

  8. windows下配置lamp环境(3)---配置PHP5.4

    下面配置php Php文件夹里有两个php.ini-*文件,随便修改一个,去掉后缀,变成php.ini (如图) 打开php.ini ,添加php扩展目录723行左右(其实放哪都无所谓,只不过php. ...

  9. windows下配置lamp环境(0)---软件获取

    工作快一年了,还没有怎么配置过服务器环境,经常使用集成套件wampserver,为了复习配置wamp服务器 特意在虚拟机中测试安装步骤如下. 安装前步骤:下载软件.软件下载地址如下: 1.apache ...

随机推荐

  1. C语言第11课

    主要内容:函数指针 一.函数指针定义 int  maxValue(int  a,int  b) { return   a > b ? a : b; } 函数名和数组名一样是地址,存在在代码区 i ...

  2. 开始 space viking 之旅

     设备 cocos2d-v2 眼下cocos2d-v3也不太稳定,它在很大程度上仍然是变化的功能. 对于稳定.我们仍然使用 v2 wget -c http://cocos2d-iphone.goo ...

  3. ios 安装OpenFire

    1.开发xmpp官网下载 2.打开openfire.pkg 3.点击继续 4.成功安装后打开偏好设置 ->双击poenfire->弹出窗体[好] 5.随后会弹出以下这个视图 开启 strr ...

  4. 日积月累系列之国籍控件(js源码)

    一直苦于没有好的国籍控件可以用,于是抽空写了一个国籍控件,现分享给大家. 主要功能和界面介绍 国籍控件主要支持中文.英文过滤以及键盘上下事件. 源码介绍 国籍控件核心是两个文件,navtionalit ...

  5. 关于Java中List对象的分页思想,按10个或者n个数对list进行分组

    try { List<String> timelist = DateUtils.getDateListBySETime("2015-08-01", "2015 ...

  6. Android在真机调试的设置方法

    1. 设置android手机为USB调试模式.步骤: menu---> 设置 ---> 应用程序 ---> 开发 , 选择[USB调试] 2. 用USB连接手机和电脑,并确保成功.步 ...

  7. MySQL在Windows和Linux减少数据库

    Linux减少数据库代码: 1,创建一个空数据库cddl mysql> create database cddl; Query OK, 1 row affected (0.00 sec) 2,还 ...

  8. AngularJS学习笔记(一)——一些基本知识

    (一)Hello Angular index.html <!DOCTYPE html> <html ng-app> <head> <title>Test ...

  9. .NET源代码的内部排序实现

    使用JetBrains的DotPeek工具能够方便地查看.net的部分源代码.于是看了一下.NET的内部是怎样实现排序的算法. 在System.Collections.Generic 命名空间下能够看 ...

  10. MVC+Bootstrap设计

    MVC+Bootstrap) 二 框架设计 文章目录: 一.前言 二.结构图 三.项目搭建 四.代码生成 五.实现接口 六.依赖倒置 七.登录实现 八.最后 一.前言 这个框架是从最近几年做过的项目中 ...