您好,登錄后才能下訂單哦!
小編給大家分享一下php5.6中php-fpm如何編譯安裝,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
php5.6 php-fpm編譯安裝的方法:1、安裝php依賴包并下載php5.6.36版本;2、指定軟件安裝目錄為“/usr/local/php”;3、進行nginx配置解析php即可。
本文操作環境:ubuntu16.04系統,php5.6.36版,Dell G3電腦。
今天發現有個網站是基于php版本的,然后上網收集資料后安裝一遍試試。
一、先安裝php依賴包。
yum -y install gcc gcc-c++ autoconf 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 openldap openldap-devel nss_ldap openldap-clients openldap-servers gd gd2 gd-devel gd2-devel perl-CPAN pcre-devel
二、下載php5.6.36版本
http://php.net/get/php-5.6.36.tar.gz/from/a/mirror
php-fpm組件說明
LNMP環境中的nginx是不支持php的,需要通過fastcgi插件來處理有關php的請求。而php需要php-fpm這個組件提供該功能。在php5.3.3以前的版本php-fpm是以一個補丁包的形式存在的,而php5.3.3以后只需在編譯安裝時使用--enable-fpm加載該模塊即可,無需另行安裝。
三、安裝php
先創建php需要安裝的目錄
cd /etc/ mkdir php cd /usr/local/ mkdir php tar -xzvf php-5.6.36.tar.gz cd php-5.6.36
在下面的配置中,指定軟件安裝目錄為/usr/local/php,配置文件安裝目錄為
/etc/php ./configure --prefix=/usr/local/php --with-config-file-path=/etc/php --enable-fpm --enable-pcntl --enable-mysqlnd --enable-opcache --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-shmop --enable-zip --enable-ftp --enable-soap --enable-xml --enable-mbstring --disable-rpath --disable-debug --disable-fileinfo --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pcre-regex --with-iconv --with-zlib --with-gd --with-openssl --with-mhash --with-xmlrpc --with-curl --with-imap-ssl Thank you for using PHP. config.status: creating php5.spec config.status: creating main/build-defs.h config.status: creating scripts/phpize config.status: creating scripts/man1/phpize.1 config.status: creating scripts/php-config config.status: creating scripts/man1/php-config.1 config.status: creating sapi/cli/php.1 config.status: creating sapi/fpm/php-fpm.conf config.status: creating sapi/fpm/init.d.php-fpm config.status: creating sapi/fpm/php-fpm.service config.status: creating sapi/fpm/php-fpm.8 config.status: creating sapi/fpm/status.html config.status: creating sapi/cgi/php-cgi.1 config.status: creating ext/phar/phar.1 config.status: creating ext/phar/phar.phar.1 config.status: creating main/php_config.h config.status: executing default commands [root@localhost php-5.6.36]# make [root@localhost php-5.6.36]# make install
查看軟件安裝目錄中的內容
[root@localhost php-5.6.30]# ls /usr/local/php bin etc include lib php sbin var
拷貝配置文件模板到配置文件目錄中
[root@localhost php-5.6.30]# cp php.ini-development /etc/php/php.ini
創建軟連接
[root@localhost ~]# ln -s /usr/local/php/bin/php /usr/bin/php [root@localhost ~]# ln -s /usr/local/php/bin/phpize /usr/bin/phpize [root@localhost ~]# ln -s /usr/local/php/sbin/php-fpm /usr/bin/php-fpm
查看安裝的版本
[root@localhost ~]# /usr/local/php/bin/php --version [root@localhost ~]# cd /usr/local/php/etc/ [root@localhost ~]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf [root@localhost ~]# ln -s /usr/local/php/etc/php-fpm.conf /etc/php/php-fpm.conf #添加軟連接到 /etc/php目錄 [root@localhost ~]# vim /usr/local/php/etc/php-fpm.conf pid = run/php-fpm.pid #取消前面的分號 [root@localhost ~]# cp 源碼目錄/php-5.6.36/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm #拷貝php-fpm到啟動目錄 [root@localhost ~]# chmod +x /etc/rc.d/init.d/php-fpm #添加執行權限 [root@localhost ~]# chkconfig php-fpm on #設置開機啟動
查看端口是否占用
[root@localhost ~]# netstat -tunlp |grep 9000
啟動服務
[root@localhost ~]# cd /etc/rc.d/init.d/ [root@localhost ~]# ./php-fpm start [root@localhost ~]# netstat -tunlp |grep 9000 [root@localhost ~]# ps -ef|grep fpm
四、nginx配置解析php
1、進入nginx目錄
[root@localhost ~]# cd /usr/local/nginx/conf
2、編輯配置文件
[root@localhost ~]# vim nginx.conf
在 server 下找到
location / { root html; index index.html index.htm index.php ; #加上index.php,讓nginx服務器默認支持index.php為首頁 }
往下面配置.php請求被傳送到后端的php-fpm模塊,默認情況下php配置塊是被注釋的,此時去掉注釋并修改為以下內容:
location ~ \.php$ { root /usr/local/nginx/html; #修改html路徑 fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root $fastcgi_script_name; #這里原來是/scripts,需要改成$document_root include fastcgi_params; }
保存后重新加載nginx
[root@localhost ~]# /usr/local/nginx/nginx -s t [root@localhost ~]# /usr/local/nginx/nginx -s reload http://192.168.1.11/index.php
五、相關查詢
1.通過命令查看服務器上一共開了多少的 php-cgi 進程
ps -fe |grep "php-fpm"|grep "pool"|wc -l
2.查看已經有多少個php-cgi進程用來處理tcp請求
netstat -anp|grep "php-fpm"|grep "tcp"|grep "pool"|wc -l
3.linux+nginx+php環境中,每個php-fpm進程的內存限制
設置方法:
編輯php-fpm.conf配置文件
php_admin_value[memory_limit] = 128M(我服務器上的配置文件在/etc/php5/fpm/pool.d/www.conf 這個文件是被包含在php-fpm.conf里的) 后邊的數字可以隨便更改:32M,64M,128M,256M,512M,這個設置可根據你的服務器內存大小和你的需求來寫,修改后要加載一下php-fpm服務
以上是“php5.6中php-fpm如何編譯安裝”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。