window+nginx+php环境配置 附配置搭配说明
程序员文章站
2022-05-21 08:14:24
1,下载php php下载版本比较多,其中, vc9=vs2008编译,推荐使用iis+php搭配模式, vc6=vs6编译,推荐使用apache+php方式搭...
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运行环境了:
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运行环境了:
推荐阅读
-
百度编辑器ueditor(v1.3.6)net环境中详细配置教程附bug解决方法
-
java环境配置不成功的原因(附java环境搭建及配置教程)
-
SQL2005、SQL2008允许远程连接的配置说明(附配置图)
-
java环境配置不成功的原因(附java环境搭建及配置教程)
-
win10 jdk15的下载以及环境变量的详细配置说明
-
百度编辑器ueditor(v1.3.6)net环境中详细配置教程附bug解决方法
-
ElasticSearch 5.5 离线环境的完整安装及配置详情,附kibana、ik插件配置及安装包下载路径
-
window+nginx+php环境配置 附配置搭配说明
-
Linux系列---Centos7网卡配置(内附超链接,其他linux环境搭建)
-
SQL2005、SQL2008允许远程连接的配置说明(附配置图)