window+nginx+php环境配置 附配置搭配说明


Posted in PHP onDecember 29, 2010

1,下载PHP

php下载版本比较多,其中,

vc9=vs2008编译,推荐使用IIS+php搭配模式,

vc6=vs6编译,推荐使用apache+php方式搭配,

Thread Safe,线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。Non Thread Safe是非线程安全,在执行时不进行线程(Thread)安全检查。

Non Thread Safe,

再来看PHP的两种执行方式:ISAPI和FastCGI。

ISAPI执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI来执行PHP,建议选择Thread Safe版本;

而FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以FastCGI来执行PHP,建议选择Non Thread Safe版本。

官方并不建议你将Non Thread Safe 应用于生产环境,所以我们选择Thread Safe 版本的PHP来使用。
2,配置php

解压到某个目录,如c:/php345

将php.ini-development重命名为php.ini

fastcgi.impersonate=1 默认为0,如果使用IIS,你需要开启:cgi.fix_pathinfo=1

cgi.force_redirect=0 默认开启,如果你使用IIS,可以将其关闭

其次指定extension_dir目录和date.timezone目录

extension_dir = "C:/php53iis/ext"

date.timezone= Asia/Shanghai

修改PHP.INI配置文件中的cgi.fix_pathinfo = 1,PHP 会修正 SCRIPT_FILENAME 为真实的文件地址,否则 PHP 将无法找到需要处理的 PHP 文件。
3,配置nginx

解压nginx,如c:/nginx


设定error.log的存放目录,将#error_log logs/error.log;的#去处,默认error.log是存放在Nginx安装目录中logs目录下。


设定WEB服务器目录,类似于PHP.INI配置文件中的document_root,Nginx配置文件中的信息如下

location / { 
root D:/PHPWeb; 
index index.php index.html index.htm; 
}

location ~ \.php$ { 
root D:/PHPWeb; 
fastcgi_pass 127.0.0.1:9000; 
fastcgi_index index.php; 
fastcgi_param SCRIPT_FILENAME D:/PHPWeb$fastcgi_script_name; 
include fastcgi_params;

注意:fastcgi_param SCRIPT_FILENAME 中的/scripts修改为之前设定的WEB目录,否则会报HTTP 404错误。

修改PHP.INI配置文件中的cgi.fix_pathinfo = 1,PHP 会修正 SCRIPT_FILENAME 为真实的文件地址,否则 PHP 将无法找到需要处理的 PHP 文件。
4.运行

下载RunHiddenConsole

防火墙支援RunHiddenConsole C:/php52iis/php-cgi.exe -b 127.0.0.1:9000 -c C:/windows/php.ini

来自:http://www.cnblogs.com/ihwt/archive/2010/12/18/1909742.html

如果想比较省事的朋友可以用下面的这款软件快速部署基于Nginx的php运行环境了:
https://3water.com/softs/33785.html

PHP 相关文章推荐
用PHP实现维护文件代码
Jun 14 PHP
php 面试碰到过的问题 在此做下记录
Jun 09 PHP
php学习笔记 面向对象中[接口]与[多态性]的应用
Jun 16 PHP
PHP中3种生成XML文件方法的速度效率比较
Oct 06 PHP
PHP跳转页面的几种实现方法详解
Jun 08 PHP
兼容ie6浏览器的php下载文件代码分享
Jul 14 PHP
PHP开发框架laravel安装与配置教程
Mar 13 PHP
PHP 9 大缓存技术总结
Sep 17 PHP
PHP生成随机字符串(3种方法)
Sep 25 PHP
PHP中ltrim与rtrim去除左右空格及特殊字符实例
Jan 07 PHP
浅析Yii2 gridview实现批量删除教程
Apr 22 PHP
Thinkphp连表查询及数据导出方法示例
Oct 15 PHP
php防攻击代码升级版
Dec 29 #PHP
php 传值赋值与引用赋值的区别
Dec 29 #PHP
Wordpress 相册插件 NextGEN-Gallery 添加目录将中文转为拼音的解决办法
Dec 29 #PHP
服务器web工具 php环境下
Dec 29 #PHP
php cookie的操作实现代码(登录)
Dec 29 #PHP
PHP 图片文件上传实现代码
Dec 29 #PHP
php目录操作函数之获取目录与文件的类型
Dec 29 #PHP
You might like
php面向对象全攻略 (十二) 抽象方法和抽象类
2009/09/30 PHP
php中让上传的文件大小在上传前就受限制的两种解决方法
2013/06/24 PHP
destoon在各个服务器下设置URL Rewrite(伪静态)的方法
2014/06/21 Servers
php将图片文件转换成二进制输出的方法
2015/06/10 PHP
thinkphp3.2点击刷新生成验证码
2016/02/16 PHP
Zend Framework教程之Zend_Helpers动作助手ViewRenderer用法详解
2016/07/20 PHP
静态的动态续篇之来点XML
2006/08/15 Javascript
JavaScript方法和技巧大全
2006/12/27 Javascript
javascript 3d 逐侦产品展示(核心精简)
2014/03/26 Javascript
javascript生成随机数的方法
2014/05/16 Javascript
js中一维数组和二位数组中的几个问题示例说明
2014/07/17 Javascript
快速学习jQuery插件 Cookie插件使用方法
2015/12/01 Javascript
jquery 遍历数组 each 方法详解
2016/05/25 Javascript
jquery实现静态搜索功能(可输入搜索文字)
2017/03/28 jQuery
jQuery实现的手风琴侧边菜单效果
2017/03/29 jQuery
Angular2数据绑定详解
2017/04/18 Javascript
详细AngularJs4的图片剪裁组件的实例
2017/07/12 Javascript
node中koa中间件机制详解
2017/08/22 Javascript
vue实现记事本功能
2019/06/26 Javascript
vue页面更新patch的实现示例
2020/03/25 Javascript
VSCode搭建React Native环境
2020/05/07 Javascript
[01:16:16]DOTA2-DPC中国联赛定级赛 RNG vs Phoenix BO3第二场 1月8日
2021/03/11 DOTA
Python性能优化的20条建议
2014/10/25 Python
Python实现的使用telnet登陆聊天室实例
2015/06/17 Python
Python yield 使用方法浅析
2017/05/20 Python
python GUI实例学习
2017/11/21 Python
python读文件的步骤
2019/10/08 Python
python中format函数如何使用
2020/06/22 Python
2020版Python学习路线图(附学习资料)
2020/09/15 Python
描述JSP和Servlet的区别、共同点、各自应用的范围
2012/10/02 面试题
函授大学生自我鉴定
2014/02/05 职场文书
股东合作协议书
2014/04/14 职场文书
见习报告的格式
2014/10/31 职场文书
Web前端:CSS最强总结 附详细代码
2021/03/31 HTML / CSS
CSS 伪元素::marker详解
2021/06/26 HTML / CSS
JS前端使用Canvas快速实现手势解锁特效
2022/09/23 Javascript