Ubuntu上配置nginx+php+fastcgi的流程


这两天需要在Ubuntu14.04上搭建nginx和php的环境,配置的过程中在fastcgi的问题上花了很多时间,网上的资料大多年久失修,于是决定将整个过程记录下来,分享给大家。
apt-get update
1. 安装nginx并启动
apt-get install nginx
sudo /etc/init.d/nginx start

2. 安装php及相关
sudo apt-get install php5-cli php5-cgi php5-fpm php5-mcrypt php5-mysql

3. FastCGI在运行php站点之前需要先了解下FastCGI,FastCGI是一个可伸缩地、高速地在HTTP server和动态脚本语言间通信的接口,它采用C/S结构,可以将HTTP服务器和脚本解析服务器分开,当HTTP服务器遇到动态请求时,会将请求转发给FastCGI进程,FastCGI进程执行动态脚本后再将结果返回给HTTP服务器,HTTP服务器最后将结果返回给浏览器,这在很大程度上提高了请求的响应速度。
4. PHP-FPM既然PHP-FPM的方式最好,那么我们现在就来配置一下。由于PHP-FPM是一个独立的进程,所以需要与Nginx进行通信。目前有两种通信方式,tcp和socket。两种方式的区别和配置方式可以参见这两篇文章:nginx 和 php-fpm 通信使用unix socket还是TCP,及其配置Php-fpm TcpSocket vs UnixSocket
sudo echo 'net.core.somaxconn = 2048' >> /etc/sysctl.conf sudo sysctl -p
sudo service php5-fpm restart sudo /etc/init.d/nginx reload
5. 运行php站点以上配置完成之后,我们就可以写一个简单的php页面来测试一下。创建一个网站目录:
sudo mkdir /var/www/

sudo vi /var/www/test.php
<?php phpinfo();?>
sudo nginx -c /etc/nginx/nginx.conf -t

相关内容