Ich versuche, Laravel im WAMP-Setup zu installieren. Ich erhalte eine Warnmeldung, dass openssl nicht aktiviert wurde, was ich bereits in WAMP getan habe.
Hier ist ein Screenshot der Nachricht.
Ich versuche, Laravel im WAMP-Setup zu installieren. Ich erhalte eine Warnmeldung, dass openssl nicht aktiviert wurde, was ich bereits in WAMP getan habe.
Hier ist ein Screenshot der Nachricht.
Antworten:
Es ist möglich, dass WAMP und Composer unterschiedliche PHP-Installationen verwenden. Composer verwendet das in der PATH
Umgebungsvariablen festgelegte PHP .
Wenn Sie die openssl- Erweiterung aktivieren möchten, um Composer zu installieren , müssen Sie zuerst den Speicherort der PHP-Installation überprüfen.
echo %PATH%
überprüfen Sie den Speicherort Ihrer PHP-Installation.php.ini
.extension=php_openssl.dll
aus, indem Sie das Semikolon am Anfang entfernen.Jetzt können Sie Composer installieren.
echo %PATH%
bekomme ich: C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\Sysem32\WindowsPowerShell\v1.0\;C:\Program files\Microsoft\Web Platform Installer\;C:\Program Files\MySQL\MySQL Server 5.5\bin
.. in keinem dieser Verzeichnisse ist PHP installiert .. was mache ich jetzt?
extension_dir = "ext"
in php.ini
, aber ich bin mit der einfachen PHP - Installation statt WAMP.
Ich habe mein Problem anders gelöst. Das Problem ist, dass die Benutzeroberfläche von wamp irreführend war: Sie behauptete, ich hätte sie php_openssl
aktiviert. Wenn ich php.ini
auf dieselbe Benutzeroberfläche klickte, zeigte sich tatsächlich, dass dies nicht extension=php_openssl.dll
kommentiert war.
Ich bin mir nicht sicher, ob ich dieselbe Installationsversion des Composer des OP verwende, aber Sie werden zu Beginn aufgefordert, das anzugeben, auf das php.exe
Sie den Composer anwenden möchten (was im Grunde sicherstellt, dass niemand versucht, den Composer anzuwenden die falsche PHP-ausführbare Datei als was mit dem OP passiert ist) ..
Die Art und Weise, wie ich das gelöst habe, war, mich in die Installation von PHP innerhalb des Wamp-Pakets zu begeben: C:\wamp\bin\php\php5.4.12
und php.in
dort nachzuschauen . Als ich es öffnete, war ich schockiert, dass die Zeile extension=php_openssl.dll
tatsächlich kommentiert wurde! Ich habe es auskommentiert und es hat gut funktioniert.
libeay32.dll
oder liblibcrypto-*.dll
befinden sich? php.net/manual/de/openssl.installation.php
Ich hatte das gleiche Problem und hier die Lösung, die ich gefunden habe, auf Ihrer php.ini müssen Sie einige Änderungen vornehmen:
extension_dir = "ext"
extension = php_openssl.dll
Jeder hier spricht aktiv die openssl-Erweiterung, aber in Windows müssen Sie auch das Erweiterungsverzeichnis aktivieren.
extension_dir
, du bist großartig!
Für den WAMP-Server löste der Kommentar von "Enrique" mein Problem.
wamp benutzt diese php.ini :
c:\wamp\bin\apache\Apache2.4.4\bin\php.ini
Aber Composer verwendet PHP von CLI und liest daher diese Datei:
c:\wamp\bin\php\php5.4.12\php.ini (so you need to enable openssl there)
Für Komponisten 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
Wenn Sie dies unter Windows ohne einen der WAMP-Stapel tun, erfahren Sie hier, wie Sie dies in Gang bringen
C:\php
. Das Installationsprogramm von Composer hat es dort ohne zusätzliche Aufforderung gefundenphp.ini
standardmäßig keine . Stattdessen werden zwei Dateien angezeigt, wie unten angegeben. Benennen Sie eine um php.ini
oder kopieren Sie sie in php.ini
.
Öffnen Sie Ihre php.ini
Datei und entfernen Sie das Semikolon aus dieser Zeile (möglicherweise 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 andere tun, was Sie benötigen.
Sie müssen "extension = php_openssl.dll" in beiden Dateien (php und apache) aktivieren. Mein PC-Dateipfad sind folgende:
Dies ist eine alte Frage, aber ich hatte gerade das gleiche Problem (mit PHP7) und die Lösung war am Ende ziemlich einfach. Es reichte jedoch nicht aus, die Zeile php.ini
gemäß den anderen Antworten zu kommentieren . Ich musste es ändern von:
;extension=php_openssl.dll
zu:
extension=ext/php_openssl.dll
Beachten Sie das ext
Präfix. Die DLL war bereits vorhanden, befand sich jedoch in einem Unterordner. Nach dem Ändern der Konfiguration war das Composer-Installationsprogramm zufrieden.
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-Notepad-ähnlichen Symbol hat.
Vor der openssl-Erweiterung befindet sich ein Semikolon
;extension=php_openssl.dll
Entfernen Sie das Semikolon und Sie haben
extension=php_openssl.dll
Es gibt zwei php.ini
Dateien, eine für die Entwicklung und eine für die Produktion. Lassen Sie diese, es gibt eine andere php.ini
Datei für Konfigurationseinstellungen direkt über ihnen mit einem Zahnrad wie Symbol bearbeiten, das.
php.ini
um. Nehmen Sie dann die Änderungen vor, die andere hier vorgeschlagen haben.
Nach dem Bearbeiten der "richtigen" Dateien (alle php.ini). Ich hatte immer noch das Problem. Meine Lösung war:
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:
-> WAMP neu starten -> sollte jetzt funktionieren
Ich hatte das gleiche Problem, aber als ich nach php.ini und php.exe suchte, fand ich php.exe unter C: \ UwAmp \ bin \ php \ php-5.4.15, als php.ini unter C: \ UwAmp \ bin \Apache. Ich kopiere einfach php.ini unter C: \ UwAmp \ bin \ php \ php-5.4.15 und kommentiere die Zeilenerweiterung = php_openssl.dll aus und es wurde behoben.
Ich benutze 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 habe ich festgestellt, dass es openssl nicht geöffnet hat. Ich habe es auskommentiert und es hat nach dem Neustart von WAMP funktioniert.
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
Es gibt mehrere php.ini-Dateien im Ordner C: \ wamp \ bin \ php \ php xyz. Möglicherweise finden Sie Produktions-, Entwicklungs- 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 Composer neu.
Das ist es.
Wamp funktioniert mit einer anderen php.ini in C: \ wamp \ bin \ apache \ Apache2.4.4 \ bin \ php.ini. Sie müssen also manuell die richtige Datei finden, die sich in C: \ wamp \ bin \ php \ php5.4.12 \ php.ini befindet. Kommentieren Sie die Zeile extension = php_openssl.dll aus und versuchen Sie einfach, Composer erneut zu installieren.
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 PHP.INI-Datei im Verzeichnis bin / apache erstellt. Also musste ich die PHP.INI-Datei in das PHP-Installationsverzeichnis kopieren, dh in das Verzeichnis bin / php / phpXXXX. Hier sollte sich auch die php.exe befinden, die Sie im Composer-Setup ausgewählt haben.
Hoffe das hilft.
Wenn Sie aus dem Quellcode kompiliert haben, extension=php_openssl.dll
funktioniert das Hinzufügen zur Datei php.ini möglicherweise nicht .
Um dies zu beheben, öffnen Sie eine Eingabeaufforderung und geben Sie ein php -i
. Scrollen Sie zur ersten Zeile, um den neuesten Fehler in Bezug auf Ihre Datei php.ini anzuzeigen.
Um das Problem zu beheben, suchen Sie die php_openssl.dll
Datei, die sich für mich im selben Verzeichnis wie die Kompilierungsausgabe befand:
C:\php-sdk\bin\phpdev\vc14\x64\php-7.0.13-src\x64\Release_TS
Fügen Sie also einfach das Verzeichnis hinzu, in dem sich die Erweiterung befindet php.ini
:
extension_dir = "C:\php-sdk\bin\phpdev\vc14\x64\php-7.0.13-src\x64\Release_TS"
Hoffentlich ist der Fehler weg
Wenn Sie xampp verwenden. Gehen Sie zurück zu dem Punkt, an dem Sie auswählen, welches Befehlszeilen-PHP Sie zu Beginn Ihrer Installation verwenden möchten, und wählen Sie den Pfad aus, in dem Ihr xampp-Ordner enthalten ist. Danach, wenn Ihr Installationsprogramm angibt, dass Sie die doppelte Erweiterung = php_openssl.dll 'kommentiere eine SSL-Datei in deiner PHP-INI mit einem'; 'und deine Installation sollte reibungslos funktionieren.
%PATH%
. Möglicherweise sucht Composer an anderer Stelle nach PHP anstelle von WampServer.