Heim >Backend-Entwicklung >PHP7 >So installieren Sie PHP7 und die Memcache-Erweiterung. Was soll ich tun, wenn es Kompatibilitätsprobleme zwischen alten und neuen PHP-Versionen gibt?

So installieren Sie PHP7 und die Memcache-Erweiterung. Was soll ich tun, wenn es Kompatibilitätsprobleme zwischen alten und neuen PHP-Versionen gibt?

醉折花枝作酒筹
醉折花枝作酒筹nach vorne
2021-07-20 09:18:002550Durchsuche

Ich weiß nicht, ob Sie PHP7 installieren werden, und ich weiß nicht, ob Sie sich bei der Installation der Memcache-Erweiterung mit den Kompatibilitätsproblemen zwischen alten und neuen PHP-Versionen befassen werden dazu, wenn Sie es brauchen.

So installieren Sie PHP7 und die Memcache-Erweiterung. Was soll ich tun, wenn es Kompatibilitätsprobleme zwischen alten und neuen PHP-Versionen gibt?

http://php.net/downloads.php

Installieren Sie php-7.0.0

Installieren Sie zunächst das abhängige Programm. Bitte überspringen Sie es : mcrypt.h nicht gefunden.

Weil der Standard-Yum-Quelle des C++-Compilers der Standardausgabedateiname ist: Fehler: C++-Compiler kann keine ausführbaren Dateien erstellen ', Sie müssen zuerst libiconv installieren Bei einer alten PHP-Version müssen Sie die LoadModule php5_module-Datei von Apache neu kompilieren.

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

Zu diesem Zeitpunkt ist die Installation von PHP7 abgeschlossen.

./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 \
conf, andernfalls wird aufgrund von Berechtigungsproblemen möglicherweise die Meldung „Datei nicht gefunden“ gemeldet Beginnen Sie mit der Aktivierung von PHP-FPM. Verwenden Sie ps -ef |. grep php-fpm, um den Prozess zu überprüfen.

Aber wenn ich die Memcache-Erweiterung installiere

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

Installieren Sie die stabile Version von memcache-2.2.7 2012

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

Zu diesem Zeitpunkt wird /root/memcache ein schwerwiegender Fehler gemeldet - 2.2.7/memcache.c:40:40: Schwerwiegender Fehler: ext/standard/php_smart_str.h: Keine solche Datei oder kein solches Verzeichnis

php_smart_str.h-Datei existiert nicht

Baidu-Suche php_smart_string.h dient der String-Vorverarbeitungsdynamik Die Beantragung von Speicherplatz ähnelt der Zuweisung von Speicher in Seiteneinheiten im Betriebssystem. Der Vorteil besteht darin, Speicheradressen auszurichten und die Zugriffsgeschwindigkeit zu verbessern.

Ich habe festgestellt, dass php7 diese Datei in php_smart_string.h geändert hat. Beim Vergleich der beiden Dateien sind die Änderungen ziemlich groß.

Ich weiß nicht, ob die Kompatibilität des offiziellen PHP-Entwicklungsteams nicht gute Arbeit geleistet hat, um eine Verbesserung zu erwarten

Empfohlenes Lernen:

php-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo installieren Sie PHP7 und die Memcache-Erweiterung. Was soll ich tun, wenn es Kompatibilitätsprobleme zwischen alten und neuen PHP-Versionen gibt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen