wake-up-neo.com

Wie kann man PHPs openssl-Erweiterung zur Installation von Composer aktivieren?

Ich versuche, Laravel im WAMP-Setup zu installieren. Ich erhalte eine Warnmeldung, dass openssl nicht aktiviert wurde, was ich bereits in WAMP gemacht hatte.

Hier ist ein Screenshot der Nachricht.

enter image description here

110
FirmView

Es ist möglich, dass WAMP und Composer unterschiedliche PHP - Installationen verwenden. Composer verwendet den PHP - Satz in der Umgebungsvariablen PATH

Wenn Sie die openssl extension zur Installation von Composer aktivieren möchten, müssen Sie zunächst den Speicherort der PHP - Installation überprüfen.

  1. Öffnen Sie eine Eingabeaufforderung, geben Sie Folgendes ein: echo %PATH% und überprüfen Sie den Speicherort Ihrer PHP -Installation.
  2. Gehen Sie zu diesem Speicherort und bearbeiten Sie die Datei mit dem Namen: php.ini.
  3. Entfernen Sie das Kommentarzeichen für die Zeile extension=php_openssl.dll, indem Sie das Semikolon am Anfang entfernen.

Nun können Sie Composer gut installieren.

112
Rubens Mariuzzo

Ich habe mein Problem anders gelöst. Das Problem ist, dass die GUI von wamp irreführend war: Sie behauptete, ich hätte php_openssl aktiviert .. und wenn ich php.ini auf derselben GUI anklickte, zeigte sich tatsächlich, dass extension=php_openssl.dll unkommentiert war .. 

Ich bin mir nicht sicher, ob ich dieselbe Installer-Version des Composers des OPs verwende, aber es fordert Sie tatsächlich zu Beginn auf, das php.exe anzugeben, auf das Sie den Composer anwenden möchten (was im Wesentlichen sicherstellt, dass niemand versucht, den Composer anzuwenden auf die falsche PHP-Programmdatei als was mit dem OP passiert ist).

Ich löste das Problem, indem ich mich selbst in die Installation von PHP innerhalb des Wamp-Pakets stürzte: C:\wamp\bin\php\php5.4.12 und dort php.in schaute. Als ich es öffnete, war ich geschockt, dass die Zeile extension=php_openssl.dll tatsächlich kommentiert wurde! Ich habe es unkommentiert und es hat gut funktioniert.

enter image description here

60
abbood

Ich hatte das gleiche Problem und hier die Lösung, die ich in Ihrer php.ini gefunden habe, müssen Sie einige Änderungen vornehmen:

  1. extension_dir = "ext"
  2. extension = php_openssl.dll

Jeder hier spricht aktiv über die openssl-Erweiterung, aber in Windows muss auch das Erweiterungsverzeichnis aktiviert werden.

51

Bei einem WAMP-Server wurde der Kommentar von "Enrique" gelöst.

wamp benutzt diese php.ini :

c:\wamp\bin\Apache\Apache2.4.4\bin\php.ini

Aber der Composer verwendet PHP von der CLI und liest daher diese Datei:

c:\wamp\bin\php\php5.4.12\php.ini (so you need to enable openssl there)

Für den Composer müssen Sie die Erweiterung in aktivieren

c:\wamp\bin\php\php5.4.12\php.ini

Veränderung:

;extension=php_openssl.dll 

zu

extension=php_openssl.dll
25
user3887814

Wenn Sie dies unter Windows ohne eines der WAMP-Stapel tun, erfahren Sie, wie Sie dies erreichen können

  1. Laden Sie eine Installation von PHP für Windows herunter. Im Allgemeinen möchten Sie eine sichere Installation ohne Thread. Sie können 32-Bit- oder 64-Bit-Builds verwenden
  2. Entpacke die Zip-Datei irgendwo. Ich würde C:\php vorschlagen. Das Installationsprogramm von Composer fand es ohne weitere Aufforderung
  3. Die neuesten Versionen von PHP für Windows enthalten standardmäßig keinen php.ini. Stattdessen werden zwei Dateien angezeigt (siehe unten). Benennen Sie einen Namen in php.ini um oder kopieren Sie ihn in php.ini.
    • php.ini-Entwicklung
    • php.ini-produktion
  4. Öffnen Sie Ihre php.ini-Datei und entfernen Sie das Semikolon aus dieser Zeile (vielleicht möchten Sie auch andere Dinge auskommentieren, aber diese Zeile ist die einzige, die für Composer erforderlich ist).

    ;extension=php_openssl.dll
    

Das sollte alles sein, was Sie tun müssen. Das Composer-Installationsprogramm sollte von hier aus alles Weitere erledigen.

12
Machavity

Sie müssen "extension = php_openssl.dll" in beiden Dateien (php und Apache) aktivieren. Mein PC-Dateipfad lautet wie folgt: 

  1. C:\wamp\bin\php\php5.3.13\php.ini
  2. C:\wamp\bin\Apache\apache2.2.22\bin\php.ini
11

sie müssen die openssl-Erweiterung in aktivieren 

C:\wamp\bin\php\php5.4.12\php.ini 

das ist die PHP-Konfigurationsdatei, deren Typ "Konfigurationseinstellungen" mit einem Treiber-Notizblock-Symbol hat.

  1. öffnen Sie es entweder mit Notepad oder einem Editor,
  2. suche nach openssl "würde deine Strg + F" tun.
  3. vor der openssl-Erweiterung steht ein Semikolon 

    ;extension=php_openssl.dll
    

    entfernen Sie das Semikolon und Sie haben es 

    extension=php_openssl.dll
    
  4. speichern Sie die Datei und starten Sie Ihren WAMP-Server neu. Danach können Sie die Anwendung erneut installieren.
7
DLoneDeveloper

Es gibt zwei php.ini-Dateien, eine für die Entwicklung und eine für die Produktion. Lassen Sie diese, es gibt eine weitere php.ini-Datei für Konfigurationseinstellungen direkt über ihnen mit einem Zahnrad wie dem Symbol zum Bearbeiten.

6
keneth

Dies ist eine alte Frage, aber ich hatte gerade das gleiche Problem (mit PHP7) und die Lösung war am Ende ziemlich einfach. Das Kommentieren der Zeile in php.ini wie auch in den anderen Antworten war nicht ganz ausreichend. Ich musste es ändern von:

;extension=php_openssl.dll

zu:

extension=ext/php_openssl.dll

Beachten Sie das Präfix ext. Die DLL war bereits vorhanden, befand sich jedoch in einem Unterordner. Nach dem Ändern der Konfiguration war der Composer-Installer zufrieden.

5
K Cartlidge

Nach dem Bearbeiten der "richtigen" Dateien (alle php.ini). Ich hatte immer noch das Problem. Meine Lösung war:

  1. Hinzufügen einer Systemvariablen: OPENSSL_CONF

    der Wert von OPENSSL_CONF sollte die Datei openssl.cnf Ihrer aktuellen PHP-Version sein.

für mich war es:

  • C:\wamp\bin\php\php5.6.12\extras\ssl\openssl.cnf

-> WAMP neu starten -> sollte jetzt funktionieren

Quelle: http://php.net/manual/de/openssl.installation.php

3
Mafu

Ich verwende den WAMP-Server . Tatsächlich zeigten seine Dateien, dass openssl geöffnet ist . Aber manuell ging ich in den Ordner und bearbeitete php.ini. Dann fand ich, dass openssl nicht geöffnet wurde nach dem WAMP-Neustart.

2
tharanga

Ich hatte das gleiche Problem, aber als ich für php.ini und php.exe lokking war, fand ich php.exe unter C:\UwAmp\bin\php\php-5.4.15, wenn php.ini unter C:\UwAmp\bin Ich kopiere einfach php.ini unter C:\UwAmp\bin\php\php-5.4.15 und entkommentiere die Zeilenerweiterung = php_openssl.dll und es wurde behoben.

2
M. K Hossain

C:\wamp\bin\php\php5.3.13

Navigieren Sie zu der Zeile, die lautet:

;extension=php_openssl.dll

und entfernen Sie das Semikolon vor der Zeile. Starten Sie Ihre WAMP-Serverdienste neu (klicken Sie in der Symbolleiste auf "Alle Dienste neu starten").

2
yathavan

Wenn Sie aus der Quelle kompiliert haben, kann das Hinzufügen von extension=php_openssl.dll zur Datei php.ini nicht funktionieren .

Öffnen Sie eine Eingabeaufforderung, und geben Sie php -i ein, um das Problem zu beheben. Scrollen Sie bis zur ersten Zeile, um den neuesten Fehler in Bezug auf Ihre php.ini-Datei anzuzeigen.

Um das Problem zu lösen, suchen Sie die Datei php_openssl.dll. Für mich befand sich diese Datei im selben Verzeichnis der Kompilierungsausgabe: C:\php-sdk\bin\phpdev\vc14\x64\php-7.0.13-src\x64\Release_TSSo fügen Sie einfach das Verzeichnis, in dem sich die Erweiterung befindet, zum php.ini hinzu:

extension_dir = "C:\php-sdk\bin\phpdev\vc14\x64\php-7.0.13-src\x64\Release_TS"

Hoffentlich ist der Fehler weg

1
J11

Wenn Sie Ihr Problem immer noch nicht lösen können, schauen Sie sich das an. Dies könnte die Lösung sein, nach der Sie suchen

Im Ordner C:\wamp\bin\php\php x-y-z befinden sich mehrere php.ini-Dateien. Sie finden möglicherweise Produktion, Entwicklung und einige andere php.ini-Dateien. Es macht keinen Sinn, Produktions- und Entwicklungsdateien zu bearbeiten. Suchen Sie die Datei, die genau der Abbildung unten entspricht. (Sie können es finden. Geben Sie einfach php.ini in Ihre Suchleiste ein und führen Sie eine Suche durch). Öffnen Sie die Datei und entfernen Sie sie. von extension = php_openssl.dll. Speichern Sie die Datei und schließen Sie sie. Starten Sie alle Dienste auf dem Wampp-Server neu. Installieren Sie Ihren Komponisten erneut. 

Das ist es. 

enter image description here

1
gihanmu

Für diejenigen, die das gleiche Problem haben wie ich. Nachdem ich alle oben genannten Lösungen durchgeführt hatte, funktionierte es immer noch nicht für mich. Ich fand heraus, dass uWamp die Datei PHP.INI im Verzeichnis bin/Apache erstellt hat. Also musste ich die PHP.INI-Datei in das PHP-Installationsverzeichnis kopieren, dh in das Verzeichnis bin/php/phpXXXX. Hier sollte sich auch die Datei php.exe befinden, die Sie im Composer-Setup ausgewählt haben.

Hoffe das hilft.

1
Nitro Chummy

Wamp funktioniert mit einer anderen php.ini, die sich in C:\wamp\bin\Apache\Apache2.4.4\bin\php.ini befindet. Sie müssen also die richtige Datei manuell finden, dh in C:\wamp\bin\php\php5.4.12\php.ini. Kommentieren Sie die Zeile extension = php_openssl.dll und versuchen Sie, Composer erneut zu installieren.

1
Dreyfi

Wenn Sie xampp verwenden. Gehen Sie zurück zu dem Punkt, an dem Sie auswählen möchten, welche Befehlszeilen-PHP Sie zu Beginn Ihrer Installation verwenden möchten, und wählen Sie den Pfad aus, in dem sich der xampp-Ordner befindet php_openssl.dll 'Kommentar eine ssl-Datei in Ihrem PHP-Ini mit einem'; 'und Ihre Installation sollte reibungslos laufen.

0
ricardo Chitagu