PHP-FPM是一个PHPFastCGI管理器,是只用于PHP的,我们可以通过安装 Nginx 与 PHP5-FPM 来搭建一个 Linux 下的 PHP 运行环境。

1.安装与配置Nginx

可以通过命令 apt-get install nginx 来安装 Nginx。安装完毕之后,我们可以在以下4个地方任选一个对 Nginx 的配置作出修改:

1
2
3
4
/etc/nginx/nginx.conf
/etc/nginx/conf.d/*.conf
/etc/nginx/sites-enabled/*
/etc/nginx/sites-available/default

这里我们选择在 /etc/nginx/sites-available/default 中对 Nginx 的配置进行修改,在配置中新增一个 Server 如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
server {

listen 80;
server_name 127.0.0.1;

root /var/www/html;

location / {
index index.html index.php;
}

location ~ \.php$ {
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000; #PHP运行在9000端口
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # $document_root意味着PHP使用root的文件夹,此处也可以自定义不同的PHP文件夹
include fastcgi_params;
}
}

以上配置设置好之后,对应的工作文件夹就是 /var/www/html。接下来,开始进行 PHP 的配置。

2.安装与配置PHP-FPM

执行以下命令安装PHP-FPM的相关组件:

1
2
3
4
5
6
sudo apt-get install php5-fpm
sudo apt-get install php5-gd # Popular image manipulation library; used extensively by Wordpress and it's plugins.
sudo apt-get install php5-cli # Makes the php5 command available to the terminal for php5 scripting
sudo apt-get install php5-curl # Allows curl (file downloading tool) to be called from PHP5
sudo apt-get install php5-mcrypt # Provides encryption algorithms to PHP scripts
sudo apt-get install php5-mysql # Allows PHP5 scripts to talk to a MySQL Database

查看php5运行进程:

ps -waux | grep php5

打开关闭php5进程

sudo service php5-fpm stop
sudo service php5-fpm start
sudo service php5-fpm restart
sudo service php5-fpm status

修改PHP-FPM的配置文件/etc/php5/fpm/pool.d/www.conf,把listen = /var/run/php5-fpm.sock改为listen = 127.0.0.1:9000,然后重新启动PHP与Nginx。访问127.0.0.1应该就可以访问到/var/www/html下对应的文件了。

参考:
1.ubuntu14.04 +nginx+php5-fpm - Bonker - 博客园
2.nginx对PHP文件报File not found.错 | 学步园
3.实战Nginx与PHP(FastCGI)的安装、配置与优化 - 爱维Linux - 51CTO技术博客