首先装载php
1、从www.php.net上下载php对应版本
2、解压之后放到c盘下(其实放哪无所谓,Apache会有配置指向,但是Nginx不用)
3、因为用的5.3.17版本,已经有了php-cgi.exe这个,不用做其他的事情所以开始更改php的配置,先把php.ini-development这个文件更名为php.ini,也有的版本ini后面跟的是别的,都改成.ini
4、打开php.ini文件,修改:
配置:
extension_dir = "这里写你的ext文件夹路径"     ;这个路径是指向扩展库的路径
upload_tmp_dir = "这里写你的上传缓存目录"     ;上传图片之类的缓存这里
session.save_path = "这里写你的session缓存目录"    ;这个是以文件形式储存sission,如果以数据库存储session则需要另外配置
 
打开以下扩展:
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
extension=php_pdo_odbc.dll
extension=php_pdo_sqlite.dll
extension=php_xmlrpc.dll
 
定义所在时区(本人定义的是上海时区):
date.timezone = Asia/Shanghai
 
由于Nginx要求cgi方式的php,还要修改以下配置
enable_dl = On
cgi.force_redirect = 0
cgi.fix_pathinfo=1
fastcgi.impersonate = 1
cgi.rfc2616_headers = 1  
 
配置Nginx:
1、从http://nginx.org上下载Nginx,总之从官网上下个,不管官网是不是改地址了,貌似1.3.7版本没有分32位还是64位。
2、解压之后放c盘下(放别处应该也成,习惯了……)
3、打开conf,更改nginx.conf
打开log目录:
error_log logs/error.log;
更改其他配置
server {
        listen       8080;#因为装了Apache已经占用了80接口
        server_name  localhost;
        charset utf-8;#默认文件编码
        #charset koi8-r;
 
        #access_log  logs/host.access.log  main;
 
        location / {
            root   d:/nginxWeb;#这里改成你自己的虚拟目录,注意!Nginx1.3.7及以下版本不支持文件路径中间有空格也不支持中文!!!这个以上的版本不知道会不会支持,不过这个以下是不支持的……虽然Apache支持啊……
            index  index.html index.htm index.php;#注意这里添加了index.php,如果没有添加这个有可能报403错误,这个是win下的,linux或者其他系统是否会有此问题未知。
autoindex on;#如果文件不存在,列出目录树结构
        }
        #error_page  404              /404.html;
 
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
 
        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}
 
        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;#fastcgi监听的端口,与php的cgi启动时指定的要一致
            fastcgi_index  index.php;#默认首页
            fastcgi_param  SCRIPT_FILENAME  D:/nginxWeb$fastcgi_script_name;#启动路径,这里只需要将“D:/nginxWeb”这部分改为你的安装路径就可以了
            include        fastcgi_params;
        }
 
        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }
 
运行:
1、先要运行起php的cgi,由于本人用的win7系统,所以cmd先进的c盘(之前全扔c盘这就简单了~),访问到php路径中,输入
php-cgi.exe -b 127.0.0.1:9000
注意这里的-b 127.0.0.1:9000是指定cgi的监听端口,与上文中的Nginx配置要一致,如果有其他配置不记得之前php-cgi是那个端口,可以使用php-cgi.exe -h命令来查看配置(查看-b 后面的<address:port>)。想要查看所有被监听的端口则输入netstat -na
 
2、运行Nginx
另开启一个终端,访问到nginx文件夹下,输入nginx.exe
 
保持两个终端不关闭,访问由浏览器访问虚拟目录下的文件。
 
运行后自动关闭cmd的方法:
1、下载RunHiddenConsole.exe(http://redmine.lighttpd.net/attachments/660/RunHiddenConsole.zip)
2、创建start_php.bat,来启动php,文件内容如下:
@echo off
echo Starting PHP FastCGI...
RunHiddenConsole.exe d:\php\php-cgi.exe -b 127.0.0.1:9000 -c d:\php\php.ini
3、创建stop_nginx.bat,来关闭php和nginx进程,文件内容如下:
@echo off
echo Stopping nginx...
taskkill /F /IM nginx.exe > nul
echo Stopping PHP FastCGI...
taskkill /F /IM php-cgi.exe > nul
exit
 
相关问题:
1、403错误:在nginx.conf中的index配置未加入index.php是导致403错误的其中一个原因
2、cmd中运行Nginx.exe产生错误可能是Nginx的路径中有中文、特殊符号、空格——虽然windows允许这样命名,但是nginx会报错(如之前吐槽的,Apache可以,为什么Apache要把精力放在允许空格和中文作路径上而不是改善其他的啊……费解),还有可能是Nginx的虚拟路径中存储了中文名称的文件,也可能导致nginx无法运行。
3、Nginx可以运行并并且解析HTML但是无法解析PHP,这个时候要看php-cgi.exe是否起来了,还要看nginx.conf中的监听端口和php-cgi的监听端口是否一致,如同上文配置中写到的,有很多方法查看。

Nginx+php+fastcgi在win7下的配置的更多相关文章

  1. win7下IIS配置以及域名映射方法

    win7下IIS配置以及域名映射方法 第一步:打开控制面板,选择程序与功能,如下图: 第二步:双击打开程序与功能面板,如下图: 第三步:打开”打开或关闭windows功能”(红线圈起来的地方),如下图 ...

  2. (转)NoSQL——Redis在win7下安装配置的学习一

    NoSQL——Redis在win7下安装配置的学习一   有些也是从网上看来的 1.下载安装 Redis它没有windows的官方版本,但是又非官方的版本,到官网上去下载相应的版本,我的电脑是win7 ...

  3. Win7下安装配置gVim

    本文根据vim官网的<Simple Steps to Help You Install gVim on Windows 7>[1]一文整理而成. 1. 下载gVim 在http://www ...

  4. win7下安装配置tomcat,java运行环境

    转 http://www.cnblogs.com/pannysp/archive/2012/03/07/2383364.html 1.下载JDK,安装 官网下载地址:http://java.sun.c ...

  5. (转载+新增)Win7下安装配置gVim

    转载自 http://www.cnblogs.com/zhcncn/p/4151701.html.而后安装过程中加入自己遇到的问题解决方案. 本文根据vim官网的<Simple Steps to ...

  6. win7下安装配置nodejs、使用npm安装express

    1.下载node http://nodejs.cn/download/ 这里下载自己需要的 我的环境是win764,下载地址是:https://nodejs.org/dist/v6.2.0/win-x ...

  7. cocos2d 2.2.6 win7下的配置

    我搭建cocos2.6的开发环境需要安装工具包括: 1.Visual Studio 2012(由于不兼容win7,需要安装Update 4)和虚拟光驱daemon tool,虚拟光驱的下载地址:htt ...

  8. cocos2d 3.6 win7下的配置

    我搭建cocos2.6的开发环境需要安装工具包括: 1.Visual Studio 2012(由于不兼容win7,需要安装Update 4)和虚拟光驱daemon tool,虚拟光驱的下载地址:htt ...

  9. BA-siemens-insight在win7下如何配置opc接口

    一.运行环境:win7(OPC接口在win_xp下配置需安装插件,不好意思没搞定,现在只有win7系统32位下的教程了) 由于OPC(OLE for Process Control)建立在Micros ...

随机推荐

  1. Android 跑马灯

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  2. H2数据库攻略

    H2是一个开源的嵌入式数据库引擎,采用java语言编写,不受平台的限制,同时H2提供了一个十分方便的web控制台用于操作和管理数据库内容.H2还提供兼容模式,可以兼容一些主流的数据库,因此采用H2作为 ...

  3. CocoaPods使用 主要带图。转载。

    原文地址 快速更新,不需要查找更新库 命令:pod update  --verbose --no-repo-update 虽然网上关于CocoaPods安装教程多不胜数,但是我在安装的过程中还是出现了 ...

  4. 剑指offer六:反转链表

    输入一个链表,反转链表后,输出链表的所有元素 public class ListNode { int val; ListNode next = null; ListNode(int val) { th ...

  5. LVS

    1.LVS-NAT, DNAT(多目标) 2.LVS-DR(Direct Routing) 返回报文不经过Direct real server  不能跨越路由 调度算法:Scheduling 静态方法 ...

  6. Jquery Json 下拉联动

    #region dataTable转换成Json格式 /// <summary> /// dataTable转换成Json格式 /// </summary> /// <p ...

  7. JQuery 添加节点

    Mark一段自己写的添加节点的代码 function reply2(){ $( "<div class=sec1-div5>"+"<div class= ...

  8. 参考__MySql

    博客 三范式 事务隔离级别 列表

  9. windows下如何安装和启动MySQL

    1.下载,解压到自己喜欢的目录 2.配置环境变量.MYSQL_HOME,值为mysql的根目录:在path中添加%MYSQL_HOME%/bin目录. 3.向windows注册mysql服务.必须用管 ...

  10. 【Java】Annotation_学习笔记

    Annotation 1.APT: 访问和处理Annotation的工具统称,即Annotation Process Tool. 2.java.lang下提供的五种基本Annotation: @Ove ...