1. 首先是安装PHP,安装完毕后,以FastCGI方式运行PHP。
由于php自带php-cgi.exe,在命令行下运行就行了。
F:/php-5.2.13/php-cgi.exe -b 127.0.0.1:9000 F:/php-5.2.13/ 这个是PHP的安装路径
弹出一个命令行窗口,注意不要关(下面在说解决办法) 。
2. 接着安装Nginx。
Nginx 的中文维基 http://wiki.nginx.org/NginxChs 下载现成的Windows安装包。
下载下来的是一个压缩包,直接解压拷贝到某个目录就行了(我解压于F:/nginx-1.0.2/目录下),双击nginx.exe,不需要安装。
然后浏览器里输入http://localhost/ 显示 Welcome to nginx! 表示Nginx正常运行了。
3. 配置Nginx
我的站点跟目录是D:/www目录。
F:/nginx-1.0.2/conf下的nginx.conf,记事本打开。
a. 找到
#pid logs/nginx.pid;
去掉前面的注释 , 指定 pid 存放的路径
b. 找到
location / {
root html;
index index.html index.htm;
}
修改成
location / {
root D:/www;
index index.html index.htm index.php;
}
c. 找到
#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:/www;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME D:/www/$fastcgi_script_name;
include fastcgi_params;
}
每个虚机要根据自己不通的虚机设置不能的目录,要保证这个路径正确。
fastcgi_param SCRIPT_FILENAME D:/www/$fastcgi_script_name;不能在fastcgi_pass 127.0.0.1:9000;的前面。
记得修改了php.ini要重启fastcgi服务。
4. 重启Nginx
由于修改了Nginx的配置文件,需要重新加载配置文件。
nginx -s reload
附:
1. nginx的另外几个命令参数
Nginx -s stop 快速关闭Nginx,可能不保存相关信息,并迅速终止web服务。(quick exit)
Nginx -s quit 平稳关闭Nginx,保存相关信息,有安排的结束web服务。(graceful exit)
Nginx -s reload 因改变了Nginx相关配置,需要重新加载配置而重载。(changing configuration,start a new worker,quitting an old worker gracefully.)
Nginx -s reopen 重新打开日志文件。(reopenging log files)
这上面的几个命令需要 #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
2. 解决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。双击运行就可以了
声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。