栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP

php--- nginx

PHP 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

php--- nginx

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


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/229233.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号