Heim > Artikel > Backend-Entwicklung > linux - Wie kompiliere und installiere ich offizielles PHP7 unter Ubuntu?
Schließlich muss man beim Erlernen von PHP immer noch die unterste Ebene lernen, aber ich habe alles, was mit C zu tun hat, schon lange vergessen. Bitte helfen Sie mir, das offizielle PHP7 zu kompilieren, http://php.net/downloads. php#...
Schließlich muss man beim Erlernen von PHP immer noch die unterste Ebene lernen, aber ich habe alles, was mit C zu tun hat, schon lange vergessen. Bitte helfen Sie mir, das offizielle PHP7 zu kompilieren, http://php.net/downloads. php#...
<code>wget http://cn2.php.net/get/php-7.0.9.tar.bz2/from/this/mirror tar xvf mirror cd php-7.0.9/ sudo apt-get update sudo apt-get install libkrb5-dev \ libc-client2007e \ libc-client2007e-dev \ libcurl4-openssl-dev \ libbz2-dev \ libjpeg-dev \ libmcrypt-dev \ libxslt1-dev \ libxslt1.1 \ libpq-dev \ libpng12-dev \ libfreetype6-dev \ build-essential \ git \ make</code>
Wenn in ./configure unten ein fehlender Fehler auftritt, fügen Sie lib
<code>./configure \ --prefix=/opt/php-7.0.9 \ --with-config-file-path=/opt/php-7.0.9/etc \ --with-zlib-dir \ --with-freetype-dir \ --enable-mbstring \ --with-libxml-dir=/usr \ --enable-soap \ --enable-calendar \ --with-curl \ --with-mcrypt \ --with-zlib \ --with-gd \ --disable-rpath \ --enable-inline-optimization \ --with-bz2 \ --with-zlib \ --enable-sockets \ --enable-sysvsem \ --enable-sysvshm \ --enable-pcntl \ --enable-mbregex \ --enable-exif \ --enable-bcmath \ --with-mhash \ --enable-zip \ --with-pcre-regex \ --with-pdo-mysql \ --with-mysqli \ --with-mysql-sock=/var/run/mysqld/mysqld.sock \ --with-jpeg-dir=/usr \ --with-png-dir=/usr \ --enable-gd-native-ttf \ --with-openssl \ --with-fpm-user=www-data \ --with-fpm-group=www-data \ --enable-ftp \ --with-imap \ --with-imap-ssl \ --with-kerberos \ --with-gettext \ --with-xmlrpc \ --with-xsl \ --enable-opcache \ --enable-fpm</code>
Dann beginnen wir mit dem Kompilieren. Der anfängliche 1G-Speicher meiner virtuellen Maschine reichte nicht aus, also habe ich ihn auf 4G angepasst
<code>make #或者根据你当前正在编译机器cpu核数调参数加速编译,比如我虚拟机是2核 make -j2 就可以同时跑2个job加速编译,编译了差不多15分钟</code>Dann installieren
<code>sudo make install</code>Installieren Sie php7 in dem durch das Präfix oben angegebenen Verzeichnis, nämlich /opt/php-7.0.9/
Führen Sie die CLI aus, um die Versionsnummer und Informationen anzuzeigen:
<code>/opt/php-7.0.9/bin/php -v /opt/php-7.0.9/bin/php -i</code>Bevor Sie den PHP-FPM-Dienst ausführen, müssen Sie die entsprechenden Konfigurationsdateien einrichten:
<code>sudo mv /opt/php-7.0.9/etc/php-fpm.conf.default /opt/php-7.0.9/etc/php-fpm.conf sudo mv /opt/php-7.0.9/etc/php-fpm.d/www.conf.default /opt/php-7.0.9/etc/php-fpm.d/www.conf sudo cp ./php.ini-production /opt/php-7.0.9/etc/php.ini</code>Ändern Sie den Port, auf dem fpm lauscht:
<code>sudo vi /opt/php-7.0.9/etc/php-fpm.d/www.conf >;listen = 127.0.0.1:9000 >listen = /var/run/php7.0.9-fpm.sock</code>Dann starten Sie den Dienst sudo /opt/php-7.0.9/sbin/php-fpm
Verwenden Sie schließlich
in der Nginx-Konfiguration
<code>fastcgi_pass unix:/var/run/php7.0.9-fpm.sock;</code>Das ist es.
Wenn Sie 16.04 LTS verwenden, bringen Sie Ihr eigenes PHP7-Softwarepaket mit
Sie erhalten viele Ergebnisse, wenn Sie
online suchen. Eine Parameterliste erhalten Sie mit ./configure --help. Linux编译PHP
Ich habe die PHP-Betaversion mehrmals kompiliert, als sie herauskam. Einige Erweiterungen wie Curl, GD, Iconv, JSON, MBString, Mysqlnd und PDO müssen installiert werden, da sonst viele Programme Probleme haben.
Es ist besser, es selbst zu kompilieren. Ich leide sehr unter apt-get. Das Softwarepaket ist so alt, dass es schon lange nicht mehr repariert wurde, als der Fehler gemeldet wurde