nginx+php5.5环境装配

WBOY
Release: 2016-06-13 12:16:41
Original
771 people have browsed it

nginx+php5.5环境安装
1.安装依赖包

yum install -y gcc gcc-c++  make cmake* autoconf* apr apr-util libcurl* libxml2 libxml2-devel gd gd-devel  bzip2-devel freetype* ncurse*  bison*  openssl* libjpeg*
Copy after login


2.下载php5.5
http://www.php.net/downloads.phpwget http://cn2.php.net/distributions/php-5.5.22.tar.gz
Copy after login


3.编译安装
tar -xvf php-5.5.22.tar.gzcd php-5.5.22./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-bz2 --with-curl --enable-ftp--enable-sockets --disable-ipv6 --with-gd --with-jpeg-dir=/usr/local--with-png-dir=/usr/local--with-freetype-dir=/usr/local--enable-gd-native-ttf --with-iconv-dir=/usr/local--enable-mbstring --enable-calendar --with-gettext --with-libxml-dir=/usr/local--with-zlib --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-dom --enable-xml --enable-fpm --with-libdir=lib64makemake install
Copy after login

备注:该参数支持,ftp,图片函数,pdo等支持,因为使用了php自带的mysqlnd,所以不需要额外安装mysql的lib库了.
如果你是64位系统,参数后面加上--with-libdir=lib64
如果PHP不需要curl和ftp的支持,可以将以上的–with-curl –enable-ftp去掉.

4.配置php
cp php.ini-production /usr/local/php5/etc/php.inicp /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf
Copy after login


5.启动php-fpm
/usr/local/php5/sbin/php-fpm
Copy after login
Copy after login

执行以上命令,如果没报错一般情况下表示启动正常,如果不放心,也可以通过端口判断是PHP否启动
# netstat -lnt | grep 9000tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN
Copy after login


6.安装nginx
参考http://running.iteye.com/blog/326873

7.配置nginx
vi /usr/local/nginx/conf/nginx.conf    server {        listen       80;        #server_name  127.0.0.1;        root         /data/www/test/;        charset utf-8;        index   index.html index.php;        location /{                try_files $uri $uri/ /index.php?$args;        }        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000        #        location ~ \.php$ {                expires -1s;                try_files $uri =404;                fastcgi_split_path_info ^(.+\.php)(/.+)$;                include fastcgi_params;                fastcgi_param PATH_INFO $fastcgi_path_info;                fastcgi_index index.php;                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;                fastcgi_pass 127.0.0.1:9000;        }        location ~ .*\.(jpg|JPG|jpeg|JPEG|css|bmp|gif|GIF|png|PNG)$ {                access_log off;        }    }
Copy after login



8.编写测试文件
cd /data/www/phptest/vi /data/www/phptest/index.php<?phpphpinfo ();?>
Copy after login


9、启动php-fpm 和nginx   测试
Php-fpm启动
/usr/local/php5/sbin/php-fpm
Copy after login
Copy after login

Nginx启动
/usr/local/nginx/sbin/nginx
Copy after login


10.php-fpm常用命令
INT, TERM 立刻终止
QUIT 平滑终止
USR1 重新打开日志文件
USR2 平滑重载所有worker进程并重新载入配置和二进制模块
示例:
php-fpm 关闭:
kill -INT `cat /usr/local/php/var/run/php-fpm.pid`
Copy after login

php-fpm 重启:
kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`
Copy after login

查看php-fpm进程数:
ps aux | grep -c php-fpm
Copy after login


11.修改为stock
nginx将会连接回环地址9000端口执行PHP文件,需要使用tcp/ip协议,速度比较慢.建议大家换成使用socket方式连接。
建立socket文件
#touch /tmp/php-cgi/php-cgi.socket
Copy after login

vim nginx.conf
修改:
# fastcgi_pass 127.0.0.1:9000;fastcgi_pass unix:/tmp/php-cgi/php-cgi.socket;
Copy after login

在php-fpm.conf中修改配置为:
#listen = 127.0.0.1:9000listen = /tmp/php-cgi/php-cgi.socket
Copy after login
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template