centos 7 安裝 php7 & php-fpm

1.下載源代碼php

2.添加epel 源mysql

3.安裝依賴nginx

 

yum install gcc bison bison-devel zlib-devel libmcrypt-devel mcrypt mhash-devel openssl-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel sqlite-devel gmp-devel libjpeg-devel libpng-develgit

 

 

4.建立用戶web

 

 

# groupadd www 
# useradd -g www -s /sbin/nologin -M www

 

5.編譯安裝sql

 

收集的比較全的編譯選項:shell

 

./configure \
--prefix=/usr/local/php7 \
--with-config-file-path=/usr/local/php7/etc \
--enable-inline-optimization \
--disable-debug \
--disable-rpath \
--enable-shared \
--enable-opcache \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-gettext \
--enable-mbstring \
--with-iconv \
--with-mcrypt \
--with-mhash \
--with-openssl \
--enable-bcmath \
--enable-soap \
--with-libxml-dir \
--enable-pcntl \
--enable-shmop \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-sockets \
--enable-calendar \
--enable-wddx \
--with-gmp \
--with-curl \
--with-zlib \
--enable-zip \
--with-bz2 \
--with-gd \
--enable-gd-native-ttf \
--enable-exif \
--with-readline
 
# make -j8 
# make install

配置 PHP

配置文件ubuntu

# cp php.ini-development /usr/local/php56/etc/php.ini

php-fpm 服務vim

# cp /usr/local/php56/etc/php-fpm.conf.default /usr/local/php56/etc/php-fpm.conf 
# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm56 
# chmod +x /etc/init.d/php-fpm56

啓動 php-fpmcentos

# service php-fpm56 start Starting php-fpm done

php-fpm 可用參數 start|stop|force-quit|restart|reload|status

添加 PHP 命令到環境變量

編輯 ~/.bash_profile,將:

PATH=$PATH:$HOME/bin 改成: PATH=$PATH:$HOME/bin:/usr/local/php56/bin

使 PHP 環境變量生效:

# . ~/.bash_profile

查看看 PHP 版本

# php -v 

 

################來源:http://www.timelog.xyz/tmv/20##############

 

編譯安裝的腳本是我以前寫的unmp.sh :http://git.oschina.net/fallBirds/tltw-lnmp-shell 

安裝過程和5版的無疑,很是簡單。須要注意的是,編譯參數會少了 --with-mysql 。由於PHP7 mysql的驅動函數再也不支持。之後都是預處理的天下!除了豬隊友,之後應該不會再有注入漏洞的了。

編譯過程理論上來講不會出現很大的問題。在這裏我就不說了,你們具體看腳本吧。編譯完成後,要配置PHP-FPM。 在PHP7中,PHP-FPM的配置文件存放進行了稍微的調整。按照上面提供的腳本,你會發現直接執行 /opt/php/sbin/PHP-FPM會報以下錯誤:

blob.png

root@ubuntu:/opt/php7# /opt/php7/sbin/php-fpm
[22-Sep-2015 14:29:00] WARNING: Nothing matches the include pattern '/opt/php7/etc/php-fpm.d/*.conf' from /opt/php7/etc/php-fpm.conf at line 125.
[22-Sep-2015 14:29:00] ERROR: No pool defined. at least one pool section must be specified in config file
[22-Sep-2015 14:29:00] ERROR: failed to post process the configuration
[22-Sep-2015 14:29:00] ERROR: FPM initialization failed

大概意思就是說找不到 opt/php7/etc/php-fpm.d/目錄下的配置文件。 進入裏面的目錄,會有一個www.conf.default文件。執行下面命名複製一份

root@ubuntu:/opt/php7/etc/php-fpm.d/# cp  www.conf

複製好以後,編輯該文件

root@ubuntu:/opt/php7/etc/php-fpm.d/# nano www.conf

定位到裏面文件的 user = nobody 和 group = nobody ,調整爲 www-data。這一步和5版編譯安裝同樣。最後啓動PHP-FPM

root@ubuntu:~# /opt/php7/sbin/php-fpm
root@ubuntu:~#

沒報錯,web訪問看phpinfo()

 

 

 

 

+++++++++++++++++++++error+++++++++++++++++++++++++

 

編譯安裝php報錯PHP configure: error: mcrypt.h not found. Please reinstall libmcrypt. 緣由以及解決辦法:
緣由centos源不能安裝libmcrypt-devel,因爲版權的緣由沒有自帶mcrypt的包。有

方法1:
一、安裝第三方yum源
能夠scp將阿里雲的文件CentOS-Base.repo直接拷貝過來。
二、使用yum命令安裝
yum  install  php-mcrypt  libmcrypt  libmcrypt-devel
 方法2:
使用php mcrypt 前必須先安裝Libmcrypt
libmcrypt源碼安裝方法:

wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz
tar -zxvf libmcrypt-2.5.7.tar.gz
cd libmcrypt-2.5.7
./configure  –prefix=/usr/local
make
make install

再去編譯安裝就能夠了。若有其餘報錯,請根據具體報錯解決。

 

 

在對php進行安裝的過程當中出現以下錯誤:

一、報錯信息:

1

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

二、平臺介紹:

1

2

3

4

5

6

OS Version:  CentOS release 6.4(Final)

Nginx Version:  nginx version: nginx/1.4.3

PHP Version:  PHP 5.5.5(fpm-fcgi)

Mysql Version:  Server version: 5.6.10-log Source distribution

Kernel Version: 2.6.32-358.el6.x86_64

IP address:  192.168.168.133

 

三、解決辦法:

 

1

2

3

4

vim /etc/ld.so.conf.d/local.conf     # 編輯庫文件

/usr/local/lib                       # 添加該行

:wq                                  # 保存退出

ldconfig -v                          # 使之生效

相關文章
相關標籤/搜索