Ich habe es 100 Mal ausprobiert. Ich bin wirklich neu in Ubuntu und endete mit einer Reihe von Fehlern, die ich nicht einmal verstehe. Kann mir bitte jemand helfen?
Folgendes habe ich getan:
- Ich habe PHP installiert
- Ich habe libcurl dann php5-dev installiert
- Ich habe versucht, die PECL-Erweiterung zu installieren und es heißt
PHPIZE
nicht gefunden.
Antworten:
Zunächst müssen Sie PEAR installieren über
apt-get
das notwendige Paket und Verteilungssystem zu bekommen , dass beidePEAR
undPECL
Verwendung. Geben Sie an einer Shell-Eingabeaufforderung Folgendes ein:Sie werden aufgefordert, die Installation zu bestätigen. Drücken Sie einfach "y" und geben Sie ein. Wenn alles gut geht, sollten Sie das php-pear-Paket herunterladen und installieren.
Jetzt müssen Sie das Paket php5-dev installieren, um die erforderlichen PHP5-Quelldateien zum Kompilieren zusätzlicher Module zu erhalten. Geben Sie an einer Shell-Eingabeaufforderung Folgendes ein:
Wenn Sie das php5-dev-Paket nicht installieren und versuchen, eine PECL-Erweiterung mithilfe von "pear install" zu installieren, wird die folgende Fehlermeldung angezeigt:
Für die Erweiterung PECL_HTTP muss ein zusätzliches Abhängigkeitspaket installiert werden. Sie können dies wahrscheinlich für andere Erweiterungen überspringen:
Jetzt können wir endlich die Erweiterung installieren. Geben Sie an einer Shell-Eingabeaufforderung Folgendes ein, aber ersetzen Sie "pecl_http" durch den Namen der zu installierenden PECL-Erweiterung:
Das Installationsprogramm fragt Sie möglicherweise nach bestimmten Optionen für die zu installierende Erweiterung. Sie können wahrscheinlich einfach ein- oder mehrmals die Eingabetaste drücken, um alle Standardeinstellungen zu übernehmen, es sei denn, Sie möchten bestimmte Optionen für Ihre Implementierung festlegen. Wenn alles gut geht, sollte das Modul herunterladen, erstellen und installieren.
Sobald die Installation abgeschlossen ist, werden Sie wahrscheinlich aufgefordert, Ihrer php.ini-Datei die Zeile "extension =" hinzuzufügen. Öffnen Sie die Datei php.ini in Ihrem bevorzugten Texteditor und fügen Sie die Zeile unter dem Abschnitt "Dynamische Erweiterungen" hinzu. Unter Ubuntu scheint sich die Datei php.ini im Ordner / etc / php5 / apache2 zu befinden:
In diesem Beispiel wurde ich bei der Installation der Erweiterung pecl_http aufgefordert, "extension = http.so" hinzuzufügen. Nachdem die php.ini-Datei aktualisiert wurde, muss Apache neu gestartet werden, damit die neue Erweiterung geladen wird:
Quelle
quelle
make
. Einfach machensudo apt-get install make
php7.0-dev
stattdessen das Paket:sudo apt-get install php7.0-dev
Zusätzlich zu der Antwort von @ Ask musste ich Folgendes tun:
vor dem Laufen,
pecl install pecl_http
weil ich diesen Fehler überpcre.h
:Anstatt die
php.ini
Datei zu bearbeiten , habe ich auch eine neue Datei erstellt, diepecl-http.ini
imconf.d
Unterverzeichnis derphp.ini
Datei (unter Ubuntu/etc/php5/apache2/conf.d
) aufgerufen wird.Und ich musste in drei Zeilen hinzufügen:
Schließlich
2.0.6
konnte ich seit dieser installierten Version diehttp_get_request_headers
Funktion nicht verwenden , sondern musste stattdessen die Namespace-Version verwenden.\http\Env::getRequestHeader()
Weitere Details finden Sie hierps: vergiss nicht apache neu zu starten wenn du fertig bist (
service apache2 restart
)quelle
extension=json.so
vor derhttp.so
Zeile hinzufügen musste , obwohl diejson.ini
Datei bereits enthalten warconf.d
.Zusätzlich zu den Antworten von Maythux und cwd möchten Sie möglicherweise Ihre php.ini-Datei nicht bearbeiten, da diese Änderungen bei Updates möglicherweise verloren gehen.
Debian (und damit Ubuntu) behandelt PHP-Module auf die gleiche Weise wie Apache-Module. Schauen
/etc/php5
Sie sich an , Sie finden Verzeichnisse wie dieses:Wenn Sie hineinschauen
mods-available
, sehen Sie mehrere Dateien wie:So aktivieren / deaktivieren Sie diese verfügbaren Mods für alle APIs (Apache, cli, cgi) Sie können nur die Befehle verwenden
php5enmod
oder inphp5dismod
etwa so:beziehungsweise
Diese erstellen (oder entfernen) symbolische Links zur Modulkonfigurationsdatei in
apache2/conf.d/
undcli/conf.d/
.Du kannst auch das sapi angeben, für das der Mod aktiviert / deaktiviert werden soll (in diesem Fall Apache):
pecl install
Möglicherweise wird keine Konfigurationsdatei fürraphf
(und andere damit installierte Module) erstellt. Sie können sie jedoch selbst erstellen:Dann schreibe in die folgenden Zeilen:
Die Standardpriorität ist 20. Welche Priorität Sie verwenden müssen, hängt möglicherweise vom Typ des Moduls ab. Für
raphf
20 scheint in Ordnung. ( Update : wenn du nach pecl_http suchst, muss es ab Version 2 nachrapfh
und geladen werdenpropro
, also setze die Priorität immods-available/http.ini
to30
.)Damit können Sie das Modul aktivieren:
(Hinweis: Meine Antwort hängt von Ubuntu 14.04 ab, kann aber für 13.04 auf die gleiche Weise funktionieren, siehe http://www.lornajane.net/posts/2012/managing-php-5-4-extensions-on-ubuntu )
quelle
Installieren Sie PEAR nun tagelang auf diese Weise, um es von der Quelle zu beziehen:
quelle