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

时间:2021-11-15 13:14:27

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