今天在Windows上配置了下nginx,看了不少其他大牛们记录的博客,自己也操作了一番,记录一下备忘。

nginx download: http://nginx.org/en/download.html
php download: http://php.net/

windows下nginx+php的安装配置如下:
1、安装php(D:/php)
2、配置php.ini

    extension_dir = "./ext"; 更改为 extension_dir = "D:/php/ext";
去掉如下两句的注释符,这两句是php连接mysql的必须链接库
;extension=php_mysql.dll
;extension=php_mysqli.dll
去掉下句的注释符
;cgi.fix_pathinfo=1

3、安装nginx(D:/nginx)

4、配置nginx.conf
    打开D:/nginx/conf/nginx.conf,找到

    # pass the PHP scripts to FastCGI server listening 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;     //该句表示站点根目录,可以更换为你想要的目录

  再把标记为红色的/scripts改为“$document_root”,这里的“$document_root”就是指前面“root”所指的站点路径,当然也可以更换为绝对路径。这是改完后的:

    # pass the PHP scripts to FastCGI server listening 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 $document_root$fastcgi_script_name;
include fastcgi_params;
}

输入如下命令启动phpcgi:
    D:/php/php-cgi.exe -b 127.0.0.1:9000 -c D:/php/php.ini    
    然后启动nginx,即nginx目录下的nginx.exe。

为了方便你也可以自己写一个bat脚本来快速执行以上命令,代码如下:
    启动脚本:

    @echo off
REM Windows 下无效
REM set PHP_FCGI_CHILDREN=5 REM 每个进程处理的最大请求数,或设置为 Windows 环境变量
set PHP_FCGI_MAX_REQUESTS=1000 echo Starting PHP FastCGI...
RunHiddenConsole D:/xampp/php/php-cgi.exe -b 127.0.0.1:9000 -c D:/xampp/php/php.ini echo Starting nginx...
D:/nginx-1.5.5/nginx.exe

    停止脚本:

  @echo off
echo Stopping nginx...
taskkill /F /IM nginx.exe > nul
echo Stopping PHP FastCGI...
taskkill /F /IM php-cgi.exe > nul
exit

其中RunHiddenConsole.exe为隐藏命令提示符窗口的一个工具。以上执行以后窗口可以关闭,nginx、phpcgi服务会在后台执行。

RunHiddenConsole.exe下载地址http://pan.baidu.com/share/link?shareid=364654&uk=2819113184跟脚本放到同一个目录下

=============================

在配置的时候出现了一个问题,对于新手来说估计有写也会遇到这个问题,当然网上也有很多的答案,这里记录一下解决方案。
    问题:出现No input file specified问题
    (1) 路径不合

    root     html;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

(2)配置不当

  在php.ini(/usr/local/php/etc/php.ini)的配置中中找到
     cgi.fix_pathinfo=0; 将其改成cgi.fix_pathinfo=1

我是一个nginx菜鸟,入门都不算,如果哪位路过的大牛有好的教程或资料,望能够分享一下,3Q。[505600376@qq.com]

window+nginx+php的更多相关文章

  1. window nginx 中文路径, 文件名乱码问题解决

    window nginx 中文路径, 文件名乱码, error, not found 此问题是由于windows系统编码与nginx编码设置不一致导致的,因此我们要统一二者的编码 nginx编码设置 ...

  2. window nginx 启动无提示错误,却没有listen 80port

    一直使用虚拟机来使用web+hostonly方式; 今天为了測试一个php平台的window系统兼容性, 在官方下载了window-nginx 1.9.1版本号; 解压到文件夹, 执行nginx.ex ...

  3. window+nginx+php-cgi的php-cgi线程/子进程问题

    见bbs http://bbs.csdn.net/topics/390803643/close 正常的配置情况下,window的php-cgi是不会出现多线程/子进程的,例如以下配置 fastcgi_ ...

  4. window nginx 简单搭建服务器访问静态资源

    nginx命令: 启动: start nginx 停止:nginx -s stop ||  nginx -s quit 注:stop是快速停止nginx,可能并不保存相关信息:quit是完整有序的停止 ...

  5. Window nginx+tomcat+https部署方案 支持ios9

    客户端和 Nginx 之间走的 HTTPS 通讯,而 Nginx 到 Tomcat 通过 proxy_pass 走的是普通 HTTP 连接. 下面是详细的配置(Nginx 端口 80/443,Tomc ...

  6. window nginx 基础命令

    在Windows下使用Nginx,我们需要掌握一些基本的操作命令,比如:启动.停止Nginx服务,重新载入Nginx等,下面我就进行一些简单的介绍.(说明:打开cmd窗口) 1.启动: C:\serv ...

  7. Window Nginx安装

    1.下载Nginx 下载地址:http://nginx.org/en/download.html 我这里下载的版本是: nginx/Windows-1.12.2 2.解压Nginx 把下载下来的zip ...

  8. window下nginx的常用命令

    window nginx 启动 常用命令 2016-05-04 11:11 214人阅读 评论(0) 收藏 举报 分类: nginx(5) 版权声明:本文为博主原创文章,未经博主允许不得转载. 启动 ...

  9. window下手动搭建 PHP+Nginx+Mysql(转)

    首先还是下载 nginx:  http://nginx.org/en/download.html php  :  http://windows.php.net/download/ mysql:  ht ...

随机推荐

  1. Elasticsearch 第八篇:数据类型 Array、Nested、Object 的设计与应用

    h2.post_title { background-color: rgba(43, 102, 149, 1); color: rgba(255, 255, 255, 1); font-size: 1 ...

  2. 【Python】Json序列化和反序列化模块dumps、loads、dump、load函数介绍

    1.json.dumps()  json.dumps()用于将dict类型的数据转成str,因为如果直接将dict类型的数据写入json文件中会发生报错,因此在将数据写入时需要用到该函数. 转换案例: ...

  3. “三剑客”之sed手中有剑

    一.sed介绍 sed是Stream Editor(字符流编辑器)的缩写,简称流编辑器.sed是操作.过滤和转换文本内容的强大工具.常用功能包括对文件实现快速增删改查(增加.删除.修改.查询),其中查 ...

  4. Redis安全学习

    Redis安全学习 一直在听SSRF打Redis,那Redis到底是啥,正式的认真学习一下. 1.Redis是什么 REmote DIctionary Server(Redis) 是一个由Salvat ...

  5. phpmyadmin远程代码执行漏洞(CVE-2016-5734)

    简介 环境复现:https://github.com/vulhub/vulhub 线上平台:榆林学院内可使用协会内部的网络安全实验平台 phpMyAdmin是一套开源的.基于Web的MySQL数据库管 ...

  6. 攻克solo第六课(大调音阶与真的爱你)

    在本期文章中,笔者将通过guitar pro7和大家分享大调音阶的知识. 不知道大家有没有试着使用my song book里面的谱子,反正笔者是觉得赚大了,并且找了囊括民谣.爵士到摇滚在内不同风格的谱 ...

  7. 通过Camtasia来制作画中画视频效果的方法

    随着全民娱乐化的发展,视频的形式也更加多种多样了.视频形式的多样化能让观众从不同形式的视频中观赏到更有趣味的内容.比如像画中画的视频形式,让视频中的人物看起来像与观众一同观看视频,或者形成两个视频的对 ...

  8. 思维导图软件iMindMap的使用方法

    从手绘的思维导图再到各种各样的思维导图的软件,思维导图的高效性大家都体会到了.思维导图软件iMindMap在众多导图软件中是最受欢迎的之一,下面就给大家分享一下思维导图怎么画: 首先我要教给大家的是如 ...

  9. pycharm2020激活破解和汉化

    一:破解补丁和程序下载:链接:https://pan.baidu.com/s/1u-aZrKMmfRBlQHtcivUt8Q    提取码:tvko 二:破解步骤: 1.安装下载的pycharm202 ...

  10. 关于你天天见到的JDK、JRE和JVM

    什么是JDK.JRE.JVM? 大家都知道电脑的操作系统是由汇编和C语言写出,因此操作系统无法直接识别其他语言.这时我们就需要为我们写的Java程序配备一名翻译官 ----- 编译环境,将Java程序 ...