主页 » 服务器管理 » Linux下安装PHP为CGI模式

Linux下安装PHP为CGI模式

2008-03-291条评论

首先安装好Nginx和PHP(CGI模式),请参考另外两篇日志。

在nginx配置文件,我的系统里面是 /usr/local/nginx-0.5.3/conf/nginx.conf
的server内添加如下配置

location ~ \.php$ {
  fastcgi_pass   localhost:9000;
  fastcgi_index  index.php;
  fastcgi_param  SCRIPT_FILENAME  /usr/local/website$fastcgi_script_name;
  include        conf/fastcgi.conf;
}

其中9000是我的php-cgi与nginx通讯的端口,/usr/local/website是我的网站根目录

创建/usr/local/nginx-0.5.3/conf/fastcgi.conf文件,内容如下:

fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx;

fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;

(以上部分参考 http://blog.codefront.net/2007/06/11/nginx-php-and-a-php-fastcgi-daemon-init-script/)

从lighttpd中得到二进制的 spawn-cgi 文件,我把它放在 /usr/local/php-5.2.5/bin下
建立php-cgi到nginx的通道 /usr/local/php-5.2.5/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u www -f /usr/local/php-5.2.5/bin/php-cgi
重启nginx,就可以了
(以上部分参考 http://www.linuxdiyf.com/bbs/redirect.php?tid=76830&goto=lastpost
与 http://blog.s135.com/read.php/314.htm)

其他参考:

http://wiki.codemongers.com/NginxFcgiExample

No related posts.

以上关联文章由 Yet Another Related Posts Plugin 提供支持。

相关文章

现有1条评论

  1. ryan 说:

    如果在A服务器上装Nginx,静态文件放在A上;B服务器上放PHP程序,并通过Socket连接到A上的Nginx。这种架构的负载均衡,比Apache又先进了一回。Feb老大已经实现了,配置也不复杂。(阿债 2008-04-08)

发表评论