为了账号安全,请及时绑定邮箱和手机立即绑定

php--- nginx

标签:
PHP

yum -y install gcc automake autoconf libtool make

yum -y install gcc gcc-c++ glibc  

yum -y install libmcrypt-devel mhash-devel libxslt-devel  libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel  zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel  ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel


安装php


wget http://kr1.php.net/distributions/php-5.5.1.tar.gz


./configure --prefix=/usr/local/php  --enable-fastcgi --enable-fpm --with-mcrypt --with-zlib  --enable-mbstring --disable-pdo --with-curl --disable-debug  --disable-rpath  --enable-inline-optimization --with-bz2  --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --with-mhash --enable-zip --with-pcre-regex --with-mysql --with-gd --with-jpeg



编译出错,提示没有libmcrypt,下载安装

wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz

然后再编译


继续出错

configure: error: Don't know how to define struct flock on this system, set --enable-opcache=no


同样的系统,在另一台安装没有这个错误,暂时不用opcache了


查找系统文件名

rpm -qa file

查找安装位置

rpm -ql file



启动php-fpm


[root@localhost /]# /usr/local/php/sbin/php-fpm


直接启动会出错: ERROR: failed to open configuration file '/usr/local/php/etc/php-fpm.conf': No such file or directory

解决:

[root@localhost /]# cd /usr/local/php/etc/

[root@localhost /]# cp php-fpm.conf.default php-fpm.conf

启动正常


启动nginx

[root@localhost /]# /usr/local/nginx/sbin/nginx




执行ps aux | grep php可以看到1个主进程、2个子进程,一共3个进程。

php-fpm默认使用的端口号是9000(可以在php-fpm.conf中修改:listen = 127.0.0.1:9000)

telnet 127.0.0.1 9000会发现9000这个端口确实是打开状态,至此php-fpm已经安装完成,再在/etc/rc.local中增加下面这句:

/usr/local/sbin/php-fpm

作用是让php-fpm开机自动启动。

常用操作:

重启php-fpm:kill -USR2 `ps aux | grep php-fpm | grep master | awk '{print $2}'`

这样的写法就是先用ps aux找到php-fpm的主进程的进程ID,然后发信号告诉系统重启


接下来是nginx中的设置:

找到站点的server配置段,增加如下这一段:
server {
#.....
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

重启nginx:

[root@localhost /]# /usr/local/nginx/sbin/nginx -s reload


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消