Rumah >pembangunan bahagian belakang >PHP7 >Bagaimana untuk memasang php7 dan memasang sambungan memcache Apakah yang perlu saya lakukan jika terdapat isu keserasian antara versi php lama dan baharu?

Bagaimana untuk memasang php7 dan memasang sambungan memcache Apakah yang perlu saya lakukan jika terdapat isu keserasian antara versi php lama dan baharu?

醉折花枝作酒筹
醉折花枝作酒筹ke hadapan
2021-07-20 09:18:002558semak imbas

Saya tidak tahu sama ada anda akan memasang php7, dan saya tidak tahu sama ada anda akan menangani isu keserasian versi php lama dan baharu apabila memasang sambungan memcache Hari ini saya akan membawa anda mengetahui tentangnya. dan anda boleh merujuknya jika anda memerlukannya.

Bagaimana untuk memasang php7 dan memasang sambungan memcache Apakah yang perlu saya lakukan jika terdapat isu keserasian antara versi php lama dan baharu?

http://php.net/downloads.php

Pasang php-7.0.0

Mula-mula pasang program bergantung jika ia sudah Jika anda telah memasangnya, sila langkau

yum install -y php-mcrypt libmcrypt libmcrypt-devel
yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel mysql pcre-devel
#openssl-devel是64位 如果是32位服务器请选择i386版的
yum install openssl-devel.x86_64
yum install curl curl-devel
yum -y install libxslt-devel
yum install -y php-mcrypt libmcrypt libmcrypt-devel mcrypt mhash
./configure --prefix=/usr/local/php7 \
--with-config-file-path=/usr/local/php7/etc \
--with-config-file-scan-dir=/usr/local/php7/etc/php.d \
--with-mcrypt \
--enable-mysqlnd \
--with-mysqli \
--with-pdo-mysql \
--enable-fpm \
--with-gd \
--with-iconv \
--with-zlib \
--enable-xml \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--enable-mbregex \
--enable-mbstring \
--enable-ftp \
--enable-gd-native-ttf \
--with-openssl \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-zip \
--enable-soap \
--without-pear \
--with-gettext \
--enable-session \
--with-curl \
--with-jpeg-dir \
--with-freetype-dir \
--enable-opcache

make &&  make install

可选
--with-fpm-user=www \
--with-fpm-group=www \

Jika anda digesa configure: error: mcrypt.h not found Sila pasang semula libmcrypt

Kerana lalai sumber yum centos6.x tidak mempunyai libmcrypt- Pakej devel, atas sebab hak cipta, hanya boleh menggunakan sumber yum pihak ketiga, atau memuat turun dan menyusun pakej pemasangan secara manual

wget http://jaist.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz
./configure
make && make install

Jika menyemak C nama fail output lalai pengkompil dilaporkan... konfigurasi: ralat: Pengkompil C

tidak boleh mencipta boleh laku

yum list | grep c++
yum install gcc-c++.x86_64

Jika ia menggesa rujukan yang tidak ditentukan kepada `libiconv', anda perlu memasang libiconv terlebih dahulu

--with-iconv=/usr/local/libiconv

Jika anda masih mendapat ralat, vim Makefile

Cari EXTRA_LIBS =

Tambah -liconv di penghujung

atau terus buat ZEND_EXTRA_LIBS= '-liconv'

Jika anda memasang semula versi lama php, anda perlu menyusun semula fail LoadModule php5_module apache

./configure --with-apxs2=/usr/local/sbin/apxs

Pada masa ini, pemasangan php7 selesai

mv /usr/local/src/php-7.1.0/php.ini-production /usr/local/php7/etc/php.ini

Dayakan perkhidmatan php-fpm

cd /usr/local/php7/etc
mv php-fpm.conf.default php-fpm.conf
mv php-fpm.d/www.conf.default php-fpm.d/www.conf

Beri perhatian kepada menukar pengguna dan kumpulan conf php-fpm, jika tidak, Fail tidak ditemui mungkin dilaporkan disebabkan masalah kebenaran.

user = nobody
group = nobody

Jalankan php-fpm

/usr/local/php7/sbin/php-fpm -c /usr/local/php7/etc/php.ini -y /usr/local/php7/etc/php-fpm.conf

Jika anda ingin menggunakan perkhidmatan arahan ini php-fpm start|stop |restart

cd /usr/local/src/php-7.1.0/sapi/fpm
ls
cp init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
chkconfig --add php-fpm
chkconfig php-fpm on

Anda boleh menggunakan sevice php-fpm mula mendayakan php-fpm. Gunakan ps -ef |. grep php-fpm untuk menyemak proses.

Tetapi apabila saya memasang sambungan memcache

http://pecl.php.net/package/memcache

Pasang memcache-2.2.7 2012 versi stabil

#如果已安装过autoconf请忽略
autoconf
yum install autoconf

phpize
./configure --enable-memcache --with-php-config=/usr/local/php7/bin/php-config
make && make install

Ralat maut telah dilaporkan pada masa ini /root/memcache-2.2.7/memcache.c:40:40: ralat maut: ext/standard/php_smart_str.h: Tiada fail atau direktori sedemikian

fail php_smart_str.h tidak wujud

Carian Baidu php_smart_string.h adalah untuk memohon ruang memori secara dinamik untuk prapemprosesan rentetan, serupa dengan peruntukan memori dalam unit halaman dalam sistem pengendalian alamat memori.

Saya dapati php7 telah menukar fail ini kepada php_smart_string.h Membandingkan kedua-dua fail, perubahannya agak besar

Saya tidak tahu sama ada ini kerana keserasian PHP rasmi. pasukan pembangunan tidak melakukan kerja yang baik dan menantikan penambahbaikan

Pembelajaran yang disyorkan: tutorial video php

Atas ialah kandungan terperinci Bagaimana untuk memasang php7 dan memasang sambungan memcache Apakah yang perlu saya lakukan jika terdapat isu keserasian antara versi php lama dan baharu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:csdn.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam