首先是安装PHP
我本地原来安装过了PHP5.2.11了。没安装过的也类似,官方网站下载一个Windows的二进制包就行了。
直接运行PHP5.2.11安装文件,然后选择修改,下一步 ,选择Other CGI,出现选择安装的扩展,
我选择了GD2、Mysql、Mysqli、PDO、PDO_MYSQL。下一步,安装,安装完成。
然后以FastCGI方式运行PHP
由于php自带php-cgi.exe,在命令行下运行就是了。
php-cgi.exe -b 127.0.0.1:9000
弹出一个命令行窗口,注意不要关(下面在说解决办法) 。
接着安装Nginx
官方网站上有现成的Windows安装包,直接下来就是了
稳定安全方面考虑采用的版本为当前稳定本Nginx/windows 0.7.63 (更新记录) (2009年10月26日)
下载下来是一个压缩包,直接解压拷贝到某个目录就行了,
我安装在D:\nginx-0.7.63
双击nginx.exe,就运行了,不需要安装。
我是安装在D:\nginx-0.7.63
然后浏览器里输入http://localhost/ 显示
Welcome to nginx!
表示Nginx正常运行了。
配置Nginx
我的站点跟目录是D:/www目录。
配置不是很复杂就不做注释了
D:\nginx-0.7.63\conf下的nginx.conf,记事本打开。
找到
#pid logs/nginx.pid;
去掉前面的注释
找到:
location / { root html; index index.html index.htm; }
修改成:
location / { root D:/www; index index.html index.htm index.php; }
找到:
#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; #}
前面的注释去掉,修改成
location ~ \.php$ { root D:/wwwroot; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME D:/wwwroot/$fastcgi_script_name; include fastcgi_params; }
重启Nginx
由于修改了Nginx的配置文件,需要重新加载配置文件。
nginx -s reload
nginx的另外几个命令参数
nginx -s stop //暂停 nginx -s quit //退出nginx
这上面的几个命令需要 #pid logs/nginx.pid; 前的注释去掉,且logs/nginx.pid文件中保存了当前的nginx进程的pid才有效。
其他几个小技巧
用cmd命令行强制结束进程命令
taskkill /F /IM nginx.exe > nul
(有时候结束nginx,这个命令更管用)
就可以关闭所有的nginx进程了。
关闭fastcgi的命令类似
taskkill /F /IM php-cgi.exe > nul
在网站根目录,放一个phpinfo文件,不出错就可以看到当前网站的配置信息了。
解决fastcgi方式运行php时的cmd窗口问题。
方法很简单用vbs脚本来启动就能解决。这个方法比网上借助第三方小软件(例如RunHiddenConsole.exe)简单的多
具体代码:
set wscriptObj = CreateObject("Wscript.Shell") wscriptObj.run "php-cgi.exe -b 127.0.0.1:9000",0
保存你到php目录,命名成start_fastcgi.vbs。双击运行就可以了。