So kompilieren und installieren Sie PHP und Nginx in einer Ubuntu-Umgebung

So kompilieren und installieren Sie PHP und Nginx in einer Ubuntu-Umgebung

Dieser Artikel beschreibt, wie man PHP und Nginx in einer Ubuntu-Umgebung kompiliert und installiert. Teilen Sie uns die Einzelheiten zu Ihrer Information mit:

Kompilieren und installieren Sie nginx

Wechseln Sie zum Arbeitsordner:

cd /usr/local/src

Laden Sie den PCRE-Quellcode herunter und installieren Sie ihn

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre2-10.20.tar.gz
tar -zxvf pcre2-10.20.tar.gz
mv ./pcre2-10.20.tar.gz ./pcre 
CD-PCRE
./configure --prefix=/usr/local/pcre
machen && machen installieren

Laden Sie den zlib-Quellcode herunter und installieren Sie ihn

wget http://tenet.dl.sourceforge.net/project/libpng/zlib/1.2.8/zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2.8.tar.gz
mv ./zlib-1.2.8.tar.gz ./zlib
CD Zlib
./configure --prefix=/usr/local/zlib
machen && machen installieren

Laden Sie den Nginx-Quellcode herunter und installieren Sie ihn

wget http://nginx.org/download/nginx-1.8.1.tar.gz
tar -zxvf nginx-1.8.1.tar.gz
cd nginx-1.8.1
./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/pcre --with-zlib=/usr/local/zlib
machen && machen installieren

Starten Sie nginx beim Booten

Fügen Sie /ect/init.d/nginx hinzu und schreiben Sie das Skript

#!/bin/bash
# Beschreibung: Startskript für Webserver auf CentOS. cp es in /etc/init.d und
# chkconfig --add nginx && chkconfig nginx ein
# dann können Sie den Serverbefehl verwenden, um nginx zu steuern
#
# chkconfig: 2345 08 99
# Beschreibung: Startet, stoppt nginx
setze -e
PFAD=$PFAD:/usr/local/nginx/sbin/
DESC="nginx-Daemon"
NAME=nginx
DAEMON=/usr/local/nginx/sbin/$NAME
CONFIGFILE=/usr/local/nginx/conf/nginx.conf
PIDFILE=/var/run/nginx.pid
SCRIPTNAME=/etc/init.d/$NAME
# Beenden Sie ordnungsgemäß, wenn das Paket entfernt wurde.
test -x $DAEMON || beenden 0
d_start() {
$DAEMON -c $CONFIGFILE || echo -n " ​​läuft bereits"
}
d_stoppen() {
kill -QUIT `cat $PIDFILE` || echo -n " ​​läuft nicht"
}
d_neu laden() {
kill -HUP `cat $PIDFILE` || echo -n " ​​kann nicht neu laden"
}
Fall "$1" in
Start)
echo -n "$DESC beginnt: $NAME"
d_start
echo "."
;;
stoppen)
echo -n "$DESC wird gestoppt: $NAME"
d_stoppen
echo "."
;;
neu laden
echo -n "$DESC-Konfiguration neu laden …"
d_neu laden
echo "neu geladen."
;;
Neustart)
echo -n "$DESC wird neu gestartet: $NAME"
d_stoppen
Schlaf 1
d_start
echo "."
;;
*)
echo "Verwendung: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
Ausfahrt 3
;;
esac
Ausfahrt 0

chmod +x /etc/init.d/nginx
chkconfig --add nginx
chkconfig --level 2345 nginx ein
Dienst Nginx starten

Kompilieren und installieren Sie php5.6 aus dem Quellcode

PHP-Quellcode herunterladen

cd /usr/local/src
wget http://cn2.php.net/get/php-5.6.24.tar.gz/from/this/mirror
mv mirror php-5.6.24.tar.gz
tar -zxvf php-5.6.24.tar.gz
cd php-5.6.24

Abhängige Komponenten installieren

XML-Erweiterung

apt-get installiere libxml2-dev

PNG-Erweiterung

apt-get installiere libpng12-dev

FreeType-Erweiterung

apt-get -y installiere libfreetype6-dev

OpenSSL-Erweiterung

apt-get installiere openssl
apt-get installiere libcurl3-openssl-dev

JPEG-Erweiterung

apt-get installiere libjpeg-dev

Anweisung „Compile“

Konfigurationsdateien generieren

./configure --prefix=/opt/php --with-config-file-path=/opt/php/lib --enable-mbstring --enable-ftp --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-openssl-dir=/usr --with-openssl --with-pdo-mysql=mysqlnd --with-pear --enable-sockets --with-freetype-dir=/usr --enable-gd-native-ttf --with-zlib --with-libxml-dir=/usr --with-xmlrpc --enable-zip --enable-fpm --enable-fpm --enable-xml --enable-sockets --with-gd --with-zlib --with-iconv --enable-zip --with-freetype-dir=/usr/lib/ --enable-soap --enable-pcntl --enable-cli

Nach der Installation der abhängigen Komponenten sollten keine Fehler auftreten. Falls Fehler auftreten, installieren Sie bitte die fehlenden Komponenten und generieren Sie die Konfigurationsdatei neu.

Kompilieren und Installieren

machen && machen installieren

PHP-Serverkonfiguration anzeigen

Wenn wir den Server migrieren, muss der Code zum Generieren der Konfigurationsdatei mit dem ursprünglichen PHP-Server übereinstimmen. Wir können php-config --configure-options verwenden, um ihn anzuzeigen.

Der Speicherort von php-config ist php/bin/php-config

Keine php.ini gefunden?

Nach dem Kompilieren und Installieren von PHP direkt gibt es keine php.ini. Wir können sie aus dem dekomprimierten Verzeichnis nach /opt/php/lib kopieren und dann so konfigurieren, dass sie wirksam wird.

/opt/php/lib ist der in ./configure konfigurierte Pfad.

Ich hoffe, dieser Artikel hilft Ihnen bei der Konfiguration Ihrer Ubuntu-Umgebung.

Das könnte Sie auch interessieren:
  • So kompilieren und installieren Sie PHP 5.3.3+Memcache unter Ubuntu
  • Kompilieren und installieren Sie die PHP5.3-Entwicklungsumgebung unter Ubuntu12
  • Tutorial zum Kompilieren und Installieren von PHP 5.6.29 aus dem Quellcode auf Ubuntu 16.04
  • Spezifische Schritte zum Kompilieren und Installieren von xcache für php5.3 unter Ubuntu
  • Ubuntu nginx kompilieren und installieren Parameterkonfiguration
  • Spezifische Schritte zur Installation und Konfiguration von nginx+php+mysql basierend auf Ubuntu
  • So installieren Sie PHP und konfigurieren PHP Nginx unter Ubuntu
  • Ubuntu+Nginx+Mysql+Php+Zend+eaccelerator Installations- und Konfigurationstextversion
  • Xen-basiertes VPS Ubuntu+Nginx+PHP Installations-Tutorial
  • So installieren Sie nginx+mariaDB+php7+YAF auf Ubuntu14.04LTS
  • Installieren des LEMP-Stacks für den Nginx-Server in Ubuntu 16.04 (Unterstützung für MariaDB, PHP 7 und HTTP 2.0)

<<:  Grafisches Tutorial zur Installation und Konfiguration von MySQL 8.0.12

>>:  Vue+thinkphp5.1+axios zum Realisieren des Datei-Uploads

Artikel empfehlen

Beispiel für die Verwendung von Dockerfile zum Erstellen eines Nginx-Images

Einführung in Dockerfile Docker kann automatisch ...

Lösung für Indexfehler in MySQL aufgrund unterschiedlicher Feldzeichensätze

Was ist ein Index? Warum einen Index erstellen? I...

Vermeiden Sie den Missbrauch zum Lesen von Daten in Vue

Inhaltsverzeichnis Vorwort 1. Der Prozess der Ver...

Beispiel einer Vorrendering-Methode für eine Vue-Einzelseitenanwendung

Inhaltsverzeichnis Vorwort vue-cli 2.0 Version vu...

Beispielcode und Methode zum Speichern von Arrays in MySQL

Beim Schreiben gespeicherter Prozeduren werden hä...

Detailliertes Tutorial zur Verwendung des Befehls xargs unter Linux

Hallo zusammen, ich bin Liang Xu. Sind Sie bei de...

MySQL Serie 12 Backup und Wiederherstellung

Inhaltsverzeichnis Tutorial-Reihe 1. Beschreibung...

Der vollständige Code der im Uniapp-Applet enthaltenen Radardiagrammkomponente

Effektbild: Der Implementierungscode lautet wie f...

6 ungewöhnliche HTML-Tags

Zuerst: <abbr> oder <acronym> Diese be...

Detaillierte Erläuterung der Vue Simple Notepad-Entwicklung

In diesem Artikelbeispiel wird der spezifische Co...

So implementieren Sie die Kontrollkästchen- und Radioausrichtung

Nicht nur das Verhalten verschiedener Browser ist...

CSS-Leistungsoptimierung - detaillierte Erklärung der Will-Change-Verwendung

will-change teilt dem Browser mit, welche Änderun...

Die Vorteile von Div+CSS und Web-Standardseiten

Das Div-Element wird verwendet, um Struktur und Hi...