一直以来做的PHP项目都是部署在Apache上面的,听说nginx的性能要不Apahce强很多,今天真好有时间来部署一下lnmp的开放环境,我使用的是CentOS6系列的服务器
一、首先安装nginx:
yum install nginx
执行安装命令,提示 No package nginx available ,CentOS自带的yum仓库竟然没有这个包,于是安装epel仓库,首先下载epel的安装包,下载链接: 注意你的linux的版本,下载对应的epel包。
接下来安装epel包:
rpm -ivh
安装成功之后会在/etc/yum.repos.d目录下面生成两个epel仓库的配置文件,分别是epel.repo和epel-testing.repo,默认启用的是epel.repo,然后再执行yum install nginx,可以安装成功
启动nginx服务:
service nginx start
修改防火墙,开启80端口的访问:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
通过浏览器访问,出现如下界面表示nginx安装成功:
二、配置nginx和php
正常情况下,nginx和php直接是完全不认识的,我们就是通过php-fastcgi将二者整合。CentOS中怎么安装php这里就不在赘述了,php5.3中默认已经编译安装了php-fastcgi,安装完php之后查看是否安装php-fpm:
rpm -q php-fpm
如果没有安装执行如下命令安装:
yum install php-fpm
不知道php-fpm的作用可以自己百度查一下。主要是对php-fastcgi进行管理的一个插件。
修改php-fpm的配置文件,编辑默认的配置文件 vim /etc/php-fpm.d/www.conf 取消前面的注释
;listen = 127.0.0.1:9000
保存后重启php-fpm服务:
service php-fpm restart
接下来配置nginx的配置文件:
vim /etc/nginx/conf.d/default.conf
添加如下配置信息:
location ~ \.php$ {
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi.conf;
#include fastcgi_params;
}
注意上面的include,我采用默认的fastcgi_params浏览程序时报找不到文件的错误,保存后重启服务:
service nginx restart
相关阅读:
Ubuntu 13.04 安装 LAMP\Vsftpd\Webmin\phpMyAdmin 服务及设置
CentOS 6.3 安装LNMP (PHP 5.4,MyySQL5.6)
Ubuntu安装Nginx php5-fpm MySQL(LNMP环境搭建)