centos6.5上部署PHP服务
标签:服务器, nginx, php本文记录我在联通沃云服务器上部署PHP服务的过程,Nginx安装已在前篇文章中说明。本文主要说整合nginx和php的过程。
准备安装资源
[root@template ~]# cd ~/src/
[root@template src]# wget http://museum.php.net/php5/php-5.2.17.tar.gz
[root@template src]# wget http://php-fpm.org/downloads/php-5.2.17-fpm-0.5.14.diff.gz
安装PHP
[root@template src]#yum -y install libjpeg-devel libpng-devel libxml2-devel
[root@template src]# tar -xvzf php-5.2.17.tar.gz
[root@template src]# tar -xvzf php-5.2.17.tar.gz
[root@template src]# gzip -cd php-5.2.17-fpm-0.5.14.diff.gz | sudo patch -d php-5.2.17 -p1
[root@template php-5.2.17]# cd php-5.2.17
[root@template php-5.2.17]# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/lib --enable-fastcgi --enable-fpm --with-mysql=/usr/lib64/mysql --with-gd --enable-gd-native-ttf --with-zlib-dir=/usr/local/zlib --with-png-dir --with-jpeg-dir=/usr/local/jpeg6/
如果configure出现类似如下错误:
configure: error: libjpeg.(a|so) not found
configure: error: libpng.(a|so) not found
configure: error: Cannot find libmysqlclient under /usr.
请执行以下命令:
ln -s /usr/lib64/libjpeg.so /usr/lib/libjpeg.so
ln -s /usr/lib64/libpng.so /usr/lib/libpng.so
mkdir /usr/lib/mysql
cp -r /usr/lib64/mysql /usr/lib/
[root@template php-5.2.17]# make
[root@template php-5.2.17]# make install
[root@template php-5.2.17]# cp php.ini-dist /usr/local/php/etc/php.ini
[root@template php-5.2.17]# vi /usr/local/php/etc/php-fpm.conf
把php-fpm.conf里带“nobody”的两行注释去掉,不然PHP-FPM自己不知道以那个用户和组运行PHP 启动php
[root@template ~]# /usr/local/php/sbin/php-fpm start
整合Nginx与PHP
修改nginx的配置文件 打开nginx.conf 去掉下面几行的注释,
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
将
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
改为
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
找到
location / {
root html;
index index.html index.htm;
}
在index.htm后面添加index.php
测试
我们在nginx的配置文件里面已经定义了PHP网站的存放路径,路径为/usr/local/nginx/html下面我们在这个目录下新建一个PHP页面网页,文件名为test.php,内容如下:
<?php
phpinfo();
?>
重启PHP与nginx后,在浏览器中输入http://ip/test.php,查看是否可能解析PHP文件。
Written on 2016-04-20
上篇:
centos6.5上部署django服务
下篇:
使用nginx实现负载均衡