环境:vagrant+CentOS6.6
参考:http://blog.csdn.net/mazhibinit/article/details/50013867
最基础版
#!/usr/bin/sh
source_path=/home/vagrant/work
# 使用163的yum源
cd /etc/yum.repos.d
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
yum clean all
yum makecache
# 安装必须的开发包
sudo yum install -y gcc g++ pcre pcre-devel zlib zlib-devel openssl openssl-devel libxml2 libxml2-devel
# 安装tengine
cd $source_path
wget http://tengine.taobao.org/download/tengine-2.1.1.tar.gz
tar -zxvf tengine-2.1.1.tar.gz
cd tengine-2.1.1
./configure --prefix=/usr/local/tengine
make && make install
# 建立一个tengine到nginx的软链接,方便操作
ln -s /usr/local/tengine /usr/local/nginx
# 安装php
cd $source_path
wget http://cn2.php.net/get/php-5.6.16.tar.gz/from/this/mirror -O php-5.6.16.tar.gz
tar -zxvf php-5.6.16.tar.gz
cd php-5.6.16
./configure --prefix=/usr/local/php --enable-fpm
make && make install
# 使用php-fpm的默认配置
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
# 安装mysql
# 添加程序目录到PATH中
echo -e "\nexport PATH=$PATH:/usr/local/tengine/sbin:/usr/local/php/bin:/usr/local/php/sbin " >> /etc/profile
source /etc/profile
测试:
# 修改nginx配置
vi /usr/local/nginx/conf/nginx.conf
# 配置中本来就有php相关的配置,去掉注释即可。注意修改fastcgi_param后的路径
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
# 添加index.php文件到/usr/local/nginx/html中
<?php
echo "hello world";
# 启动nginx和php-fpm
nginx
php-fpm
访问http://localhost:8080/index.php
即可看到hello world
问题:fastcgi_param
需要绝对路径,那php的location
配置中的root
还有什么用呢?
完整版
TODO