nginx以unix-domain-socket方式连接fastcgi(php)

前面已经介绍过Ubuntu 9.04 server用apt安装nginx并配置php(fastcgi),不知道大家看到没,在文章中nginx连接fastcgi的方式是http方式的,在linux还有一种速度更快的方法就是通过unix domain socket来完成,下面介绍这种方法:
首先建立/tmp/php-cgi.sock文件,然后将之改所有者改为www-data:

#我直接改成nginx的用户,好像必须要属于nginx的用户组才能正常使用未验证
sudo chown www-data /tmp/php-cgi.sock


找到nginx.conf,如果你用的是虚拟机,那么就到/etc/nginx/site-available里改相关文件:

修改:
# fastcgi_pass 127.0.0.1:9000;
fastcgi_pass unix:/tmp/php-cgi.sock;

找到init.d/php-cgi(参考文章开关提到的文章):

修改:
#DAEMON_OPTS=”-a 127.0.0.1 -p 9000 -C 1 -u www-data -f /usr/bin/php-cgi”
DAEMON_OPTS=”-a 127.0.0.1 -s /tmp/php-cgi.sock -C 1 -u www-data -f /usr/bin/php-cgi”

然后分别重启nginx 和 spawn-fcgi即可,你的nginx效率就更高啦!:-)

7 Replies to “nginx以unix-domain-socket方式连接fastcgi(php)”

    1. 呵呵,桌面用的Ubuntu,后来就在服务器上装了个,感觉不错,很稳定~~
      其实各个版本的Linux差不许多啦,我熟悉的只有:Redhat Linux AS,CentOS,Ubuntu~~

Leave a Reply

Your email address will not be published. Required fields are marked *